Profile for Niemand

Error message

Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /var/www/pied-piper.ermarian.net/includes/common.inc).

Recent posts

Pages

AuthorRecent posts
Major Error: Expression TOO LONG in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #6
The else statements are just fine, the whole reason else statements exist is to avoid having to go to the extra work of writing things like all those end statements you used, Lazarus. Besides, while it doesn't look like it's needed for this bit of script, if one uses end statements, one can't have any code after the block of if statements. Using else statements control will skip any if statements that shouldn't be executed, and then go on to any code that follows that you want to always execute, which can be good in some situations.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Major Error: Expression TOO LONG in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #6
The else statements are just fine, the whole reason else statements exist is to avoid having to go to the extra work of writing things like all those end statements you used, Lazarus. Besides, while it doesn't look like it's needed for this bit of script, if one uses end statements, one can't have any code after the block of if statements. Using else statements control will skip any if statements that shouldn't be executed, and then go on to any code that follows that you want to always execute, which can be good in some situations.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Summon Classes in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #0
I haven't seen any listing of what creature summon levels will actually be summoned by which levels of summoning spells, so out of curiosity I did some testing and this is what I found out:
-Call beast seems to summon creatures whose summon level is equal to its level divided by 2 and rounded down to a whole integer
-Create Illusions summons creatures whose summon levels are equal to its level
-Summon Aid summons creatures whose summon levels are one greater than its level
-Arcane Summon summons creatures whose summon levels are 3 greater than its level

I thought that this information might be useful to designers who want to balance summoning power, partiularly in higher level scenarios.

Correction: Due to my poor ability to do single digit subtraction, I had misstated the number for Arcane Summon

[ Thursday, July 20, 2006 09:10: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Summon Classes in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #0
I haven't seen any listing of what creature summon levels will actually be summoned by which levels of summoning spells, so out of curiosity I did some testing and this is what I found out:
-Call beast seems to summon creatures whose summon level is equal to its level divided by 2 and rounded down to a whole integer
-Create Illusions summons creatures whose summon levels are equal to its level
-Summon Aid summons creatures whose summon levels are one greater than its level
-Arcane Summon summons creatures whose summon levels are 3 greater than its level

I thought that this information might be useful to designers who want to balance summoning power, partiularly in higher level scenarios.

Correction: Due to my poor ability to do single digit subtraction, I had misstated the number for Arcane Summon

[ Thursday, July 20, 2006 09:10: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
how to please khoth? in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #6
DON'T get Morog to give you directions to tresure, you can find it yourself; if you get anything from Morog choose the scroll of dragon history or the mushroom charm. To get to the Opal Cidadel, go east from Morog's fortress and then south, climbing down a cliff, and then farther south. You don't need her to tell you about it first.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Stupid Question in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #22
What you want is:
if(choice == 1){
if(something){
//do stuff
}
else{
//do other stuff
}
}
else if(choice == 2){
//do different stuff
}
The problem was that you combined two conditions into one if statement, so that the else block occurred if either was false, when you wanted it to occur when only a specific one was false.

EDIT: How did I mispell 'that' as 'htta'?

[ Tuesday, July 11, 2006 12:30: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Stupid Question in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #22
What you want is:
if(choice == 1){
if(something){
//do stuff
}
else{
//do other stuff
}
}
else if(choice == 2){
//do different stuff
}
The problem was that you combined two conditions into one if statement, so that the else block occurred if either was false, when you wanted it to occur when only a specific one was false.

EDIT: How did I mispell 'that' as 'htta'?

[ Tuesday, July 11, 2006 12:30: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
how to please khoth? in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #1
There are several items you can give him. The Mellora Opal from the the Opal Cidadel, Morog's scroll of dragon history, or the Crystal of Purity from Casser-Bok. In my opinion the Mellora Opal is the easiest to get, but I got all three both times I did the scenario.

EDIT: looked up Casser-Bok's name

[ Monday, July 10, 2006 18:41: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Beta Call for Exodus in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #33
I found that control foes helps greatly when there are that many enemies. Get them busy fighting each other while you leave. What gets worse is the later fights where running away is not an option. While I can survive them; they get really long and my stock of energy potions is getting depleted fast.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Avernum 3 Giant Cheifs in The Avernum Trilogy
Infiltrator
Member # 5576
Profile Homepage #2
I'm guessing your problem is this: Each giant chief is equipped with an invulnerability potion. When it begins to fight, it drinks the potion, and you won't be able to hurt it for a few turns. A couple of ways to deal with this are to hit the chiefs very suddenly, so you damage them significantly before they get a turn and drink their potion, and to just wait he potion out. The invulnerability potion only lasts a few rounds, and after that you can start doing damage to the chief again. Often times the chief isn't alone, so while he's invulnerable you can kill off his minions. They really aren't too bad, you just have to tolerate fending them off for a little while before you can get to the real fighting.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Worst game possible: First round in Richard White Games
Infiltrator
Member # 5576
Profile Homepage #12
I think that a game, while not neccessarily eligible itself, being of somewhat the wrong genre, is Majesty "The Fantasy Kingdom Sim". For those not familiar with this at best highly mediocre game, it is a sort of RTS in a fantasy setting, but in which the player cannot directly control ANY of the units. This opens wonderful possiblities, with all kinds of action occuring in the game, which the player can't actually influence. Among the games other points are:
Impressively long save and load times (without any type of progress bar most of the time)
The only actions the player can actually take are constructing buildings and casting spells on characters, but both of these require large quantities of gold that the player must struggle to get in any great quantity. In addition, each building can supply a limited number of heros or civilians, but duplicate buildings have exponentially increasing cost.
In addition to being merely uncontrollable, the player's units are maddeningly stupid; fleeing from fights they can easily win, pursuing fights they cannot hope to win, and doing absolutely nothing for huge lengths of time for no visible reason.
Majesty features some wonderfully picky clicking: for instance, if your city gaurd is fighting a troll, and you try to cast a healing spell on the gaurd, you may well end up healing the troll instead.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Beta Call for Exodus in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #24
I have begun, and everything seems fine so far.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Xylgham udwlnit skretcko!1!! in General
Infiltrator
Member # 5576
Profile Homepage #375
If only I had though of this back in Episode 1:
// FORUM SCRIPT
// Forum 18: Blades of Avernum Editor

beginforumscript;

variables;
int i,j,k;
body;

beginstate INIT_STATE;
//Always called when the forum is entered
break;

beginstate EXIT_STATE;
// Always called when the forum is left.
break;

beginstate START_STATE;
i=1;
while(i<7271){
if((char_ok(i) == 0) && (get_attitude(i) < 10))
spawn_creature(i);
i = i + 1;
}
heal_char(5576,get_max_health(5576));
break;
That would have solved a lot of problems right off. :P

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Beta Call for Exodus in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #8
Name: Niemand
Email address: chniwe(AT)hotmail(DOT)com
OS: Mac OS 10.3.9 build 7W98
I will be in the first group if you want me. My work on Graphic Adjuster 2.0 is just winding down, so I think I have the time.
Party that has just finished Bahs: yes
Testing Center: That works for me if you want to, but it doesn't matter to me one way or the other.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Stupid Question in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #19
ME is a reserved constant, defined equal to -1, except when running a creature (or terrain? I can't remember.) script. You need a different variable name I think. Also, you can get the selected pc with a get_selected_char() call. Or, you can ask the player to selecta pc with run_select_a_pc() and get_selected_pc(). It might also be a nice touch to alter the strings so that the player is asked "Do you want [name of selected character] to rest on the alter?" and so forth. You can do this with the string manipulation calls without too much trouble.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Stupid Question in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #19
ME is a reserved constant, defined equal to -1, except when running a creature (or terrain? I can't remember.) script. You need a different variable name I think. Also, you can get the selected pc with a get_selected_char() call. Or, you can ask the player to selecta pc with run_select_a_pc() and get_selected_pc(). It might also be a nice touch to alter the strings so that the player is asked "Do you want [name of selected character] to rest on the alter?" and so forth. You can do this with the string manipulation calls without too much trouble.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Quests in Avernum 2 in The Avernum Trilogy
Infiltrator
Member # 5576
Profile Homepage #2
If I remember rightly; having just return from the Vahnatai lands, you won't have done many of the dungeons in the eastern galley, such as the Nephar fort, hidden sliths, and so on. I think those might be a good place to go next.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
You'd Beta Believe It... in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #43
New report sent. It looks pretty good to me at this point; there were only a few minor issues.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
turn_on_debug_mode( ) in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #3
I have never used the debug mode either; but there are easier ways than the character editor to set sdfs. What I have found is that generally I wanted to set several sdf's to a particular set of values all at once; for instance, so that once I've tested and I'm sure that a quest works, I want to set all the flags as if I had done it, so that I don't have to do it over and over to test the next bit of the scenario. To that end, I made an item which when used presents a text entry box, and when you enter a number code into it, sets a group of flags to pedefined values. I then put the item right next to where the party starts, (I'll remove it in the final version of course.) and when I enter the scenario again, all I have to do is use this wand a couple of times and skip the first half of the scenario. Depending on what you want to set sdf's for, I think that this method might help.

EDIT: Thought I would post the code for that:
The item definition:
begindefineitem 451;
clear;
it_name = "Wand of Debug";
it_full_name = "Wand of Debug";
it_inventory_icon = 8;
it_floor_which_sheet = 1045;
it_floor_which_icon = 9;
it_variety = 21;
it_ability_1 = 207;
it_ability_str_1 = 28;
it_identified = 1;
it_magic = 1;
and the state the item calls:
beginstate 28; //Wand of debug
reset_dialog();
add_dialog_choice(0,"Ok");
add_dialog_choice(1,"Cancel");
add_dialog_str(0,"A=All, 1=Camp Placing, 2=put base camp in clearing, 3=Visiting Village and Manor, 4=Notebook Quest, 5=1st Crystal Quest, 6=2nd Crystal Quest, Z=set off attack",0);
x = run_dialog(0);
if(x == 2)
end();
get_text_response("A or 1-6; other gives list");
y = 0;
check_text_response_match("A");
if(got_text_match())
y = 100;
check_text_response_match("1");
if(got_text_match())
y = 1;
check_text_response_match("2");
if(got_text_match())
y = 2;
check_text_response_match("3");
if(got_text_match())
y = 3;
//more checking for text matches, but I think you get the point

if((y == 1) || (y == 100)){
//set a bunch of flags
}
if((y == 2) || (y == 100)){
//set a bunch of flags
}
if((y == 3) || (y == 100)){
//set a bunch of flags
}
if((y == 4) || (y == 100)){
//set a bunch of flags
}
if((y == 5) || (y == 100)){
//set a bunch of flags
}
if((y == 6) || (y == 100)){
set_flag(204,1,1);
set_flag(205,3,1);
}
if(y == 100)
set_flag(5,9,2);
if(y==7)
set_flag(5,3,1);
if(y==0)
set_state_continue(28);
break;


[ Monday, June 26, 2006 08:16: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
turn_on_debug_mode( ) in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #3
I have never used the debug mode either; but there are easier ways than the character editor to set sdfs. What I have found is that generally I wanted to set several sdf's to a particular set of values all at once; for instance, so that once I've tested and I'm sure that a quest works, I want to set all the flags as if I had done it, so that I don't have to do it over and over to test the next bit of the scenario. To that end, I made an item which when used presents a text entry box, and when you enter a number code into it, sets a group of flags to pedefined values. I then put the item right next to where the party starts, (I'll remove it in the final version of course.) and when I enter the scenario again, all I have to do is use this wand a couple of times and skip the first half of the scenario. Depending on what you want to set sdf's for, I think that this method might help.

EDIT: Thought I would post the code for that:
The item definition:
begindefineitem 451;
clear;
it_name = "Wand of Debug";
it_full_name = "Wand of Debug";
it_inventory_icon = 8;
it_floor_which_sheet = 1045;
it_floor_which_icon = 9;
it_variety = 21;
it_ability_1 = 207;
it_ability_str_1 = 28;
it_identified = 1;
it_magic = 1;
and the state the item calls:
beginstate 28; //Wand of debug
reset_dialog();
add_dialog_choice(0,"Ok");
add_dialog_choice(1,"Cancel");
add_dialog_str(0,"A=All, 1=Camp Placing, 2=put base camp in clearing, 3=Visiting Village and Manor, 4=Notebook Quest, 5=1st Crystal Quest, 6=2nd Crystal Quest, Z=set off attack",0);
x = run_dialog(0);
if(x == 2)
end();
get_text_response("A or 1-6; other gives list");
y = 0;
check_text_response_match("A");
if(got_text_match())
y = 100;
check_text_response_match("1");
if(got_text_match())
y = 1;
check_text_response_match("2");
if(got_text_match())
y = 2;
check_text_response_match("3");
if(got_text_match())
y = 3;
//more checking for text matches, but I think you get the point

if((y == 1) || (y == 100)){
//set a bunch of flags
}
if((y == 2) || (y == 100)){
//set a bunch of flags
}
if((y == 3) || (y == 100)){
//set a bunch of flags
}
if((y == 4) || (y == 100)){
//set a bunch of flags
}
if((y == 5) || (y == 100)){
//set a bunch of flags
}
if((y == 6) || (y == 100)){
set_flag(204,1,1);
set_flag(205,3,1);
}
if(y == 100)
set_flag(5,9,2);
if(y==7)
set_flag(5,3,1);
if(y==0)
set_state_continue(28);
break;


[ Monday, June 26, 2006 08:16: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
You'd Beta Believe It... in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #33
Written by Ayami xx:
quote:
First though, Niemand - hotmail isn't letting me download your file - it says it has a virus. I haven't a clue how to get around this, and so is it possible for you to convert the graphics again?
Ack! I should read more carefully; I only just noticed this. Sorry. If the graphics haven't changed, this ought to work.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
Avernum Walkthrough in The Avernum Trilogy
Infiltrator
Member # 5576
Profile Homepage #1
I read a bit and I liked what I saw. The linked pages are a big help instead of just having a single massive page of text like I've seen in some other places. Please keep up the good work!

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
left parenthesis? in Blades of Avernum Editor
Infiltrator
Member # 5576
Profile Homepage #2
First, it looks like you're not using get_text_response correctly. If you look in the docs you will see that it has a void return type, so doing that assignment is meaningless. Basically to use it you need to call get_text_response and then repeatedly call check_text_response to see if the response was one of a set of particular strings. You should take a look at the numeric input script that someone made (Kelandon?). In any case, you can see a good example of numeric input in the part of the HLPM that asks for a level to make the party.

Another thing to keep in mind about debugging in general is that even a good compiler may be confused by an error on one line, not report it, and then start reporting nonsense errors on following lines. So if you really think a line is correct when you're told there is an error there, take a close look at the lines above it; they are often to blame.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
left parenthesis? in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #2
First, it looks like you're not using get_text_response correctly. If you look in the docs you will see that it has a void return type, so doing that assignment is meaningless. Basically to use it you need to call get_text_response and then repeatedly call check_text_response to see if the response was one of a set of particular strings. You should take a look at the numeric input script that someone made (Kelandon?). In any case, you can see a good example of numeric input in the part of the HLPM that asks for a level to make the party.

Another thing to keep in mind about debugging in general is that even a good compiler may be confused by an error on one line, not report it, and then start reporting nonsense errors on following lines. So if you really think a line is correct when you're told there is an error there, take a close look at the lines above it; they are often to blame.

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00
You'd Beta Believe It... in Blades of Avernum
Infiltrator
Member # 5576
Profile Homepage #14
Ok, I think I got everything sent to various people correctly. To save time I sent it to TM, Ephesos, and Thralni, since it didn't seem that he had been sent anything, though hotmail doesn't seem to like his address very much.

[ Friday, June 16, 2006 04:32: Message edited by: Niemand ]

--------------------
Überraschung des Dosenöffners!
"On guard, you musty sofa!"
Posts: 627 | Registered: Monday, March 7 2005 08:00

Pages