another one IVAN fork

Sep 28, 2010, 8:38 pm
#26
Joined: Dec 3, 2007
Occupation: Chaos Weaver
Location: Standing between all life and death
Posts: 2,888
I just gave it a shot but I can't play it at all. It crashes when I try to enter UT.
Uchuudonge wrote
creating stable chaos
making patterns where there should be none
sewing order into the chaos
you spit in the face of random numbers, of chaos
Sep 30, 2010, 3:26 am
#27
Joined: Sep 8, 2010
Occupation: Petty Functionary
Location: Drinking pea soup in the world map
Interests: Mangoes
Posts: 1,216
chaostrom wrote
I just gave it a shot but I can't play it at all. It crashes when I try to enter UT.

I had the same problem, until I worked out what was wrong. I solved it in this way: Try running the IVAN variant in a directory with no spaces in the directory names.
i.e:
c:\\ivan_variant\\ivan_w32.exe

rather than:
c:\\ivan variant\\ivan_w32.exe
Batman? wrote
its been so long since i had gotten that far i didnt think it through. arrrr!!!!!!
Sep 30, 2010, 7:42 pm
#28
Joined: Dec 3, 2007
Occupation: Chaos Weaver
Location: Standing between all life and death
Posts: 2,888
That solution doesn't seem to work for me.

EDIT: Finally got it working.
Oct 5, 2010, 2:17 am
#29
Joined: Dec 4, 2007
Posts: 184
Excuse me for being stupid, but...

What does this /do/?
Oct 11, 2010, 8:40 am
#30
Joined: Sep 5, 2010
Posts: 103
2chaostrom:
>Finally got it working.
please, tell me what was wrong.

also, i'll upload a new version with some fixes here and there soon (FINALLY, one can control sound volume from within I.V.A.N. itself! %-). i also updated 'g'o command alot (now hero can go thru items he stepped before, so no idiotic 'g', and 'g' again and 'g' again in long pathways).

alas, save files and bone files are not compatible with the previous version.


2Zayre:
it's another one I.V.A.N. fork based on LIVAN (i believe). with some UI enhanchements, small additions, fixes and so on. you can play it instead of original LIVAN or IVANX.


2all:
if you will manage to find the ancient katana named Kawai, DO NOT USE IT! it's cheater weapon, added strictly for debugging purposes. it will ruin your game expirience.

also, if you will name your pet '_none_', you wil get... well, none. %-)
Oct 11, 2010, 8:49 am
#31
Joined: Dec 3, 2007
Occupation: Chaos Weaver
Location: Standing between all life and death
Posts: 2,888
The problem was exactly what Warheck had said, just I didn't look far enough in the directory
Uchuudonge wrote
creating stable chaos
making patterns where there should be none
sewing order into the chaos
you spit in the face of random numbers, of chaos
Oct 11, 2010, 9:54 am
#32
Joined: Sep 5, 2010
Posts: 103
2chaostrom:
ok, tnx. i'll take a look at those spaces.


2all:
new version uploaded.
* improved 'g'o command (again)
* some bugfixes
* added two options: 'autodrop empty bottles' and 'autodrop empty cans'
* bottles can be autodropped if becomes empty after dipping in 'em
* probably some more features i forgot to document.

link in the first post is updated.
Oct 12, 2010, 10:39 am
#33
Joined: Dec 3, 2007
Interests: Christian Side Hugs
Posts: 70
I like bugfixes -- IVAN (and especially LIVAN) has a lot of bugs.

Guy, if you manage to make a (mostly) bug free version of LIVAN I will give you a million thanks. Then, I'll make a new release of LIVAN that will mostly have a ton of balance changes and a few cool new things.
<J-Kahvi> my dad tried astral projection in the 70's
Oct 13, 2010, 5:31 am
#34
Joined: Sep 5, 2010
Posts: 103
2lampshade:
>Guy, if you manage to make a (mostly) bug free version
ah, that is one of the goals. i hope to reach it before the Sun becomes supernova.

i must say that original code is AWFUL. it was very painful to fix it so it can be compiled with -O2 or -O3 instead of -O0. and i tried to run in with valgrind once... ah... my parents has to call 911 then.

for now i'm trying to find the bug that sometimes corrupting savefiles. it's funny -- my fork can detect some kind of corrupted files, but i still can't understand WHY they are corrupted.

p.s. can we have a new rebalanced LIVAN? please, Please, PLEASE!

p.p.s. not only playing I.V.A.N. is the road to Death, but reading it's sources too. so authors gave us two excellent roads to Death instead of one! %-)
Oct 13, 2010, 6:37 am
#35
Joined: Dec 3, 2007
Occupation: Chaos Weaver
Location: Standing between all life and death
Posts: 2,888
vasiliy wrote
p.p.s. not only playing I.V.A.N. is the road to Death, but reading it's sources too. so authors gave us two excellent roads to Death instead of one! %-)
Hahaha. Two for the price of one. Now that is genius
Uchuudonge wrote
creating stable chaos
making patterns where there should be none
sewing order into the chaos
you spit in the face of random numbers, of chaos
Oct 13, 2010, 1:01 pm
#36
Joined: Dec 3, 2007
Interests: Christian Side Hugs
Posts: 70
vasiliy wrote
p.s. can we have a new rebalanced LIVAN? please, Please, PLEASE!

Leave the balancing to me -- I already know what the problem is.

I actually am getting some very cool ideas on receiving some very neat items. It won't just be about randomly finding them on the dungeon floor.
<J-Kahvi> my dad tried astral projection in the 70's
Oct 13, 2010, 1:12 pm
#37
Joined: Sep 5, 2010
Posts: 103
tell your ideas. give your code. i'm ready to incorporate it, if you want.

btw: i'm planning to add a selection like "which variant you like to play? I.V.A.N. 0.50, I.V.A.N. CVS, LIVAN, etc". this will be the first step in modding code. month, or two, i think.
Oct 13, 2010, 4:16 pm
#38
Joined: Dec 2, 2007
Location: New Attnam
Interests: bananas
Posts: 2,299
Thanks again vasiliy... nice to have somebody passionate about IVAN development on board
Oct 13, 2010, 7:51 pm
#39
Joined: Dec 3, 2007
Occupation: Chaos Weaver
Location: Standing between all life and death
Posts: 2,888
Truly. Have you thought about doing official development? Jump on IRC and have a chat with herself some time.
Uchuudonge wrote
creating stable chaos
making patterns where there should be none
sewing order into the chaos
you spit in the face of random numbers, of chaos
May 19, 2012, 4:18 am
#40
Joined: Sep 5, 2010
Posts: 103
we are not dead! update with bugfixes, features ported from CLIVAN and my own unfinished stuff.

unfinished stuff:
* spider webs now can be burned with flaming swords (need to be tuned);
* you can dump contents of can or potion;
* various bugfixes.

for all linux users: i added 0build.sh shell script which can be used to build binary without my build system.
May 20, 2012, 10:23 am
#41
Joined: Sep 8, 2010
Occupation: Petty Functionary
Location: Drinking pea soup in the world map
Interests: Mangoes
Posts: 1,216
Hey that's great news! Good to see you back

vasiliy wrote
... features ported from CLIVAN ...

Try not to remember to port the bugs. I've recently observed a bug in CLIVAN that crashes the game when you make an offering in one of the altars in the forest. I'll be looking into it to see what the fatal exception is.

Here's the new repo reposted here

Keep up the great work my man. If you have any questions about some of my implementations then feel free to ask.
Batman? wrote
its been so long since i had gotten that far i didnt think it through. arrrr!!!!!!
May 20, 2012, 1:14 pm
#42
Joined: Sep 5, 2010
Posts: 103
for now i'm ported only muntuno and some critters. the process is far from complete. but i hope to port everything else too. i'm planning a little source resturcturing, so adding new mosters will be a little less complicated.

for now i added zlib support. even with fastest compression method (almost unnoticable speed change), saves becomes 700kb instead of 5mb. and bone files compressed with maximum level takes 70-100kb. but windows version with zlib crashes -- still don't know why (i have no windoze boxes at all). %-)

and tnx for your support. %-)
May 21, 2012, 8:05 am
#43
Joined: Sep 5, 2010
Posts: 103
due to my hard work and cool scripts, i ported nearly everything. i still have mysterious bug though (not sure that the original hasn't it): sometimes deleted entity still left registered in pool Be list. dunno why.

btw, i splitted items, critters, etc to separate include files (both cpp and dat). it looks much better this way and it is easier to maintain.
May 22, 2012, 9:12 am
#44
Joined: Sep 5, 2010
Posts: 103
wow! i rewrote pool code. seems that some mysterious bugs misteriously disappears. %-)
May 22, 2012, 10:41 am
#45
Joined: Sep 5, 2010
Posts: 103
2Warheck: also, you have some bugs in script files (inherited either from LIVAN or from cvs). unfortunately i was drunk when comparing my scripts with yours, so can't remember where exactly.

p.s. you can take my pool.cpp, pool.h, entity.cpp and entity.h -- i bet that my versions are better than the originals. %-)
May 22, 2012, 1:45 pm
#46
Joined: Sep 8, 2010
Occupation: Petty Functionary
Location: Drinking pea soup in the world map
Interests: Mangoes
Posts: 1,216
Sadly, I don't know how entity and pool work, or what they are for. Can you explain?
I'll try have a wee diff of what you changed to understand better.

I know that the script is really full of big mines. I had to tiptoe carefully to avoid causing the game to crash when I built new levels, creatures and materials. It will require documenting for others to be able to quickly make new things for themselves.

Do you think you will change the way the worldmap is created based on what was discussed in the thread with SquashMonster?

Edit: From your developments -> "klein bottle contents can't be dumped"
Batman? wrote
its been so long since i had gotten that far i didnt think it through. arrrr!!!!!!
May 25, 2012, 2:46 pm
#47
Joined: Sep 5, 2010
Posts: 103
windows version updated again. no more crashes on exit. and it is using compressed saves/bones now. i'm cool.
May 25, 2012, 2:57 pm
#48
Joined: Sep 5, 2010
Posts: 103
Warheck wrote
Sadly, I don't know how entity and pool work, or what they are for. Can you explain?
entity is base C++ class for all... well, entities in the game. basically, for everything -- ground, items, chars, etc.

and pool is C++ class that manages entities: call their 'think' functions ( Be() ), processes SendToHell() requests, etc.

i rewrote pool completely (it's still crap though) to get rid of some crashes. seems that it working better this way. just 4 files -- pool.h, pool.cpp, entity.h, entity.cpp -- i'm pretty sure you can just replace yours with mine.

Warheck wrote
I had to tiptoe carefully to avoid causing the game to crash when I built new levels, creatures and materials.
my version reports unknown things instead of crashing. sadly, in windows it have no console to report into. %-) i'll try to add log file with this reports though.

Warheck wrote
It will require documenting for others to be able to quickly make new things for themselves.
my version is hard to build, but it's much easier to add something to it: i splitted huge monolitic files to small and manageable. actually, when i ported features from CLIVAN, i did the same with it's sources (they can't be compiled, but it's easy to pull out changes). my fork now have all features of CLIVAN svnr7 (i think), so if you can build it with your favorite compiler, you can use it as new base version, methinks. it's easier to maintain and extend.

Warheck wrote
Do you think you will change the way the worldmap is created based on what was discussed in the thread with SquashMonster?
seems that i missed that. what thread exactly? %-)

ah, found that. thinking about it.

edit: just added "crash logs". if ivan crashed due to error in script files, it will write some info about crash in crash.log. try it, it's cool!

edit1: no more explicit team and dungeon counters. just extend corresponding enums in defines.dat and add new dungeon/team description. be sure to add empty team description for new team, of the game will crash! (see comments in teams.dat).

edit2: i implemented AllowedDungeons for critters. it's something like SquashMonster's DungeonTags. maybe i'll implement LevelTags instead -- just like DungeonTags, but for specific levels of the dungeon.

edit3: i started to rewriting worldmap generation; it's not yet good, but i can 'register' special worldmap place now and it will be placed by general algo (which will call some class methods to determine where and how it should be placed). it's just a first draft, for now it seems that i didn't broke things too much.

btw. do you know that you can combine data scripts into one file (not by 'cat'! %-), gzip it and game will load it just fine? %-)
May 27, 2012, 7:41 am
#49
Joined: Sep 8, 2010
Occupation: Petty Functionary
Location: Drinking pea soup in the world map
Interests: Mangoes
Posts: 1,216
Hi Vasily. I have to say, your development efforts are simply heroic. The changes are coming very quickly, but they are well documented so that makes it easier to keep up. I think the least I can do to help you out is to test your builds of IVAN.
I have downloaded your repository, but now I'd like to compile on windows to see if I can compile it and ultimately run it.
So I understand I have to run your distribution of k8jam to compile your version of IVAN, however, I'm having troubles compiling k8jam using FTjam (as jam.exe). I don't know what else I have to configure besides setting

set MINGW=/install/path/to/mingw/compiler
set JAM_TOOLSET=MINGW

When I try to build k8jam with FTjam I get:

C:k8jam>jam
Compiler is GCC with Mingw
warning: unknown rule set-profile
warning: unknown rule set-target-locations
warning: unknown rule gcc-suggest-attrs
warning: unknown rule softinclude
warning: unknown rule softinclude
warning: unknown rule BuildFileList
warning: unknown rule IncFile
warning: unknown rule ObjectNoAliasing
don't know how to make <src>jamgram.c
...found 161 target(s)...
...using 24 temp target(s)...
...updating 3 target(s)...
...can't find 1 target(s)...
...can't make 3 target(s)...
...skipped <src>jamgram.o for lack of <src>jamgram.c...
Cc srchsregexp.o
srchsregexp.c:87: hsregexp_unicode_mapping.c: No such file or directory

gcc -c -o srchsregexp.o  -DNT  -DMKJAMBASE_COMPACT -Isrc  srchsregexp.c

...failed Cc srchsregexp.o ...
Cc srckstrings.o
srckstrings.c:9: warning: invalid character in macro parameter name
srckstrings.c:9: badly punctuated parameter list in `#define'

gcc -c -o srckstrings.o  -DNT  -DMKJAMBASE_COMPACT -Isrc  srckstrings.c

...failed Cc srckstrings.o ...
Cc srcscan.o
srcscan.c:24: jamgram.h: No such file or directory
srcscan.c:33: jamgramtab.h: No such file or directory

gcc -c -o srcscan.o  -DNT  -DMKJAMBASE_COMPACT -Isrc  srcscan.c

...failed Cc srcscan.o ...
...skipped libjam.a for lack of libjam.a(jamgram.o)...
...skipped jam.exe for lack of libjam.a...
...failed updating 3 target(s)...
...skipped 3 target(s)...

I must be missing something obvious.
Batman? wrote
its been so long since i had gotten that far i didnt think it through. arrrr!!!!!!
May 27, 2012, 8:32 am
#50
Joined: Sep 5, 2010
Posts: 103
1. i just uploaded new windows build, with cool new array syntax. we don't need that pesky counters anymore! just use ':='.

2. k8jam can be built only with k8jam. %-) yes, the chicken and egg problem. i can give you win32 build of k8jam, but i'm not sure if you'll be able to build my I.V.A.N. under windoze. i myself using mingw cross-compiler in GNU/Linux. i'll try to check it in VirtualBox windoze. stay tuned!

p.s. take a look at this post. %-)
Jump to