thank you! it's not only alive, but i am experimenting with moving some c++ logic to simple scripts:
this is how Sumo stairs processed now:
Config SUMO_ARENA_ENTRY;
{
PostFix = "downwards";
BitmapPos = 0, 208;
on on_enter {
AddMessage "trying to enter sumo arena";
SetOtherToSumo;
if !@other_actor || !@other_enabled || @other_hostile || !@other_can_be_seen;
Allow;
endif
if @tweraif_is_free;
AddMessage "\"You started this stupid revolution, after which I've been constantly hungry. Get lost!\"";
Disallow;
endif
if @player_sumo_champion;
AddMessage "\"I don't really enjoy losing, especially many times to the same guy. Go away.\"";
Disallow;
endif
if @player_polymorphed;
AddMessage "\"Don't try to cheat. Come back when you're normal again.\"";
Disallow;
endif
if @player_hunger_state < SATIATED;
AddMessage "\"Your figure is too slender for this sport. Eat a lot more and come back.\"";
Disallow;
endif
if @player_hunger_state < BLOATED;
AddMessage "\"You're still somewhat too thin. Eat some more and we'll compete.\"";
Disallow;
endif
AddMessage "\"So you want to compete? Okay, I'll explain the rules. First, I'll make a mirror image out of us both. We'll enter the arena and fight till one is knocked out. Use of any eq
YesNoQuery "Do you want to challenge him? [y/N]";
if @last_query_bool != "tan";
Disallow;
endif
Allow;
}
}
for now it is quite stupid, interprets the whole thing each time (i.e. reparses it), and missing a lot of APIs. i.e. it is little more than a PoC. but hey, i have to start somewhere!
i believe that with richer API (it's not hard to do, just boring
it would be possible to write new quests almost entirely in .dat files. althrough new items (not configs) stll need C++ objects declared. but maybe i'll be able to create "scripteditem" and hack the database to use/extend it. this way people won't need to touch C++ anymore (at least not as often).
by the way, some stats: the game has about 350 item and material classes. not configs, just classes. it's a lot! with configs, this is about 800-1000 items, i believe. and with different materials it is MUCH more. i always knew that I.V.A.N. is rich in contents, but never really knew HOW rich it is!