Sun May 14, 2017 8:55 am
Wed May 17, 2017 1:46 am
Sat May 20, 2017 10:52 pm
Sun May 21, 2017 8:27 am
Mon May 22, 2017 7:35 am
Mon May 22, 2017 10:25 am
Mon Jun 10, 2019 11:03 am
Tue Jun 11, 2019 10:52 am
Tue Jun 11, 2019 2:08 pm
createmonsterdir("base_mugger3", dir north, 1);
Invalid number of arguments.
createmonsterdir(monstertypeid, dir (north | west |
south | east), distance)
if (choice_0 == "view_distance_change") {
current = getglobal("void_global_arena_view_distance");
message("The current visibility in The Arena is " + (current) + "%.");
message("Change hundreds value:");
createobjectlist("");
addobjecttolist(0, "0");
addobjecttolist(1, "1");
showobjectlist();
setstate(2);
}
Wed Jun 12, 2019 11:15 am
createmonsterdir("base_mugger3", north, 1);
Fri Jun 14, 2019 10:00 pm
removemonstertypes("base_archer2");
if (choice_enemy_type == 18) {
if (choice_enemy_type == 15) {
Sun Jun 16, 2019 6:19 am
Sun Jun 16, 2019 6:41 am
Yeah, I have no idea what was the idea behind "removemonstertypes". The crash is basically the expected result.
Btw. if I haven't mentioned yet, I was originally only the graphics programmer. Although I've updated the game for the improved graphics, ported it to various platforms, fixed countless bugs and even polished up the editor a lot of the inner workings of the game are just baffling.
"createmonsterdir": I think you might need to use "north", "south", etc. (with the quotation marks).
I'd need the recent questworld to check it in the editor to see where it crashes. Or does the old one linked before in the topic crash too?
Wed Jun 19, 2019 4:33 am
Wed Jun 19, 2019 9:28 pm
I tried using Create Monster and Remove Monster scripts and they always crashed.
if (getglobal("test_enemies_dead")) {
sethp(0);
}
The best way to handle monsters is to set them hidden and set them visible.
tried to implement standard C++ and C scripts in the Quest and usually adding scripting that isn't supported just doesn't work.
Thu Jun 20, 2019 3:48 am
Thu Jun 20, 2019 7:17 am
Everything the Quest supports is in the manual. You can't really go outside that in scripting. Or at least, I haven't been able to do that. You'd get a script error.
I'm trying to avoid using globals where I can because people have too many expansions enabled and the Quest sometimes gets confused checking so many globals.
Thu Jun 20, 2019 7:32 am
Quest sometimes gets confused checking so many globals
Thu Jun 20, 2019 8:27 pm
Fri Jun 21, 2019 2:15 am
Fri Jun 21, 2019 4:21 am
Elendil / Redshift wrote:Quest sometimes gets confused checking so many globals
That's not really a thing, no. Sorry Cat.
I haven't encountered this ever. What is true is that the game saves a lot of things in the save file and if the expansion is changed things can go wrong when loading the save. If you start a completely new game, there are no problems. One workaround is to go to somewhere else (like Freymore, where things haven't changed), wait a week in game time to let the game reset the area and then go back. This won't help with globals, obviously. If you change the way how you act on globals in scripts you'd have to be prepared for encountering any earlier values.
Fri Jun 21, 2019 6:20 am
Fri Jun 21, 2019 7:55 am
Fri Jun 21, 2019 1:03 pm
createobjectlist("");
if (player.hasitem("base_spbookburninghand", 1)) {
if (player.knowsspell("base_spellburninghand")) {
addobjecttolist("base_spbookburninghand", "Burning hand (owned, known)");
} else {
addobjecttolist("base_spbookburninghand", "Burning hand (owned, unknown)");
}
} else {
if (player.knowsspell("base_spellburninghand")) {
addobjecttolist("base_spbookburninghand", "Burning hand (not owned, known)");
} else {
addobjecttolist("base_spbookburninghand", "Burning hand (not owned, unknown)");
}
}
showobjectlist();
setstate(1);
createobjectlist("");
addobjecttolist("base_spbookburninghand", "Burning hand (" +
if (player.hasitem("base_spbookburninghand", 1)) {
"owned"
} else {
"not owned"
}
+ ", " +
if (player.knowsspell("base_spellburninghand")) {
"known"
} else {
"unknown"
}
+ ")");
showobjectlist();
setstate(1);
Sat Jun 22, 2019 7:04 am
createobjectlist("");
if (player.hasitem("base_spbookburninghand", 1)) {
owned = "owned";
}
else {
owned = "not owned";
}
if (player.knowsspell("base_spellburninghand")) {
known = "known";
}
else {
known = "unknown";
}
addobjecttolist("base_spbookburninghand", "Burning hand (" + owned + ", " + known +")");
showobjectlist();
setstate(1);