another one IVAN fork

Jan 12, 12:29 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
I've been playing IVAN for at least 20 years now, what's another 7? I'll check back often!
Jan 12, 3:14 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
in the end of the day… our corporation is always happy to serve our customers! here is win32 preview version some of our customers asked for. don't forget to visit our store to buy skins and shiny new DLCs!

SPOILER ALERT. Click here to see text.
as i don't have windows, this is cross-compiled, and tested (just a little) with Wine. i don't know if it will work on the real system, sorry. the archive includes current source code snapshot, and executable binary.

note that this is very WIP: expect crashes, broken quests, and various other weird things. also, community content is not ported yet.

i will upload new builds when i see fit.


upd: quickfix for one crash (wrong config value in "define.dat", lol).
Attached files
k8ivan-600112-1.7z (7.3 MB)
Jan 13, 1:47 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
copypasted most new materials and liquids from the comm fork… and i'm not sure if i like it. maybe it's simply because i used to the old set, and confused by the new things (and i really do), but maybe it's because there is too much almost similar things. tbh, the game starting to look filled with… well, fillers: a lot of "almost the same" items, differs in almost nothing, creating illusion of rich content without the real content itself.

besides, the game started generating CROWDS of golems in UT1. most new materials are ok for golems, and there are many weak golem possibilities… and i DEFINITELY don't like it. it feels like a very different game, which only looks like I.V.A.N. i mean, hordes of golems on UT2? 'cmon! (actually, even on UT1.) seeing golem for the first time should be terrifying. in the previous versions golems sometimes spawns in UT, but they were quite rare, and each encounter was terrifying. now it is almost trivial: "eh, another golem. get out of my way, you stupid thing!"

for the time being i will prolly revert all changes. or block new content from appearing in the game: no golems for new materials, no item config extensions… and no way to harden into new things too. this is because hardening is more-or-less balanced around current material chains. with new materials there, everything need to be rebalanced: materal probabilities in items, probabilities of SoHMs, and so on.

nope. i prolly revert most added things. i appreciate all the hard work community put into this new content, and it is prolly my fault trying to simply dump it in k8ivan. i hoped that it would work… but no. it simply killing the game.

i believe that comm. fork was gradually rebalanced, so new content works there. i mean, adding new materials to weapons, for example. it means that the game has wider choice of things to spawn, and doesn't have to resort to golems. without such balancing adding dozens of new materials simply destroys everything.

so i think that i will have to rework new dungeons and characters, replacing new comm. materials with ones already in the game.

i prolly need to play more of comm. fork games too, to see if it has the same feel.
Jan 13, 3:08 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
ok, i'll try to forbid golems from weak materials first. this should prevent low-tier golems spawns in UT, and should not affect the game. i mean, who would want to create a cheese golem anyway, wasting the scroll on it? it is fun, of course, but this is "one-time fun", doesn't worth ruining the game.
Jan 13, 4:07 pm
Joined: Apr 2, 2014
Occupation: Navastating
Location: Aslona
Posts: 778
Golems needed quite a bit of rebalancing after all the new materials were added. I think they were made much more rare and their stats were changed a bit? Same for equipment - a lot of material probabilities were tweaked in the base game.

While I agree food golems are simply a comic relief, I really like some of the new quick golems (bamboo golem, some cloth golems), while liquid and gas golems are really "fun" (they spray their liquid/gas around on death, so killing a mustard gas golem is... interesting).

BTW, if you haven't seen the bamboo golem vault in UT, I think that one is really fun.
Jan 13, 5:04 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
i haven't looked at dungeon changes in comm. fork yet, only to new materials, and to some new items. comparing and porting those things is mostly mechanical work, after all. but for dungeons i prolly need to write some tool to visualise them, because it is hard to build a mental picture of a dungeon from textual description (especially with multilayered special room maps).

tbh, i always wanted to write a kind of "visual dungeon builder" (and visual item/material editor too). maybe i'll do it this time instead of looking at walls of script text.


i fully agree that more materials is more fun, and edible golems are really fun too. but i prolly need to introduce "chance to make a golem" instead of simply "golem allowed" boolean. this way we can both have our lunch and eat it too.

i decided to not revert the changes, and try to think out the way to incorporate them instead, 'cause i really love all new things added.


the biggest problem is that i don't understand how the game calculates danger levels and spawn chances, so i prefer to not touch that code. i have a very rough idea of it, but as this is the core of the game, any change there may break everything. and i won't be able to tell if this is due to my changes in the code, or due to tweaking some probabilities, or if this is simply a bug i introduced.

that is, i tried the lazy route, and failed. now i'll try it for real.


still, the problem with SoHM needs to be solved too. SoHM basically skips materials with Int requirement much lower than the player's Int, but i feel that it needs some rebalancing too. it currently simply makes skips gradually harder with each step. maybe it should look not only on the number of steps, but on Int requirement difference too, to easily skip various trash materials… dunno, i need to write a "material chain visualiser" first, to see all new chains, and then try several approaches to find a good one.
Jan 13, 7:39 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
and a side note: you may noticed the SQLite amalgamation in source archive, and wonder what the hell it is doing there? well, i have the answer! it is to make the code big… oops. wrong one. i actually plan to store hiscores in sqlite database. and not only hiscores, but all things the game shows you when you're dead: message history, detiled kill statistics, and so on. hey, it's important info (which nobody needs, of course). and instead of inventing my own storage format for it, i'd better use SQLite. tbh, i want save games to be SQLite databases too, but this is too much work. maybe someday…

to be even more honest, i want EVERYTHING to be stored in SQLite database. imagine how easier it would be to manage materials, items and such if you can use SQL queries to find various things about them? you want to see the hardening chain? ok, here's SQL query for ya. you want to know which items can use the given material? SQL query to the rescue! the possibilities are infinite.

i will prolly experiment with converting scripts to SQLite db. let's see how far i could take it.
Yesterday, 12:58 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
Trying it now- I use Windows 11. Works so far. I tried to change the resolution but that made it crash but the magnification function works fine.

Really loving the changes so far. I hadn't realized how much I'd gotten used to some of the QOL stuff in the newer IVAN release but other than that I'm really loving all the popups telling me what weapon is on the ground, how it compares to my current weapon, all the colour coding etc.

Are there plans to have pop-ups showing what items are on the ground when there's a stack as well?
Yesterday, 1:01 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
Oh one thing I've noticed about the 2021 IVAN is that I've always felt leprosy was REALLY easy to contract- almost every run going through the UT I had to go back to the doctor at least once to get healed. If you're looking at balance things you definitely don't want porting over from the newer version.

I think your complaints about the newer version are legit, but I also am aware that it was a huge update that was never properly balanced.
Yesterday, 3:36 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
Yancakes wrote
Trying it now- I use Windows 11. Works so far. I tried to change the resolution but that made it crash but the magnification function works fine.
hm. it should not crash (obviously , just change the resolution on restart. but tbh, that part wasn't really tested: i set the resolution once, and never touched it again. thank you, i'll take a look!

Yancakes wrote
I hadn't realized how much I'd gotten used to some of the QOL stuff in the newer IVAN release
like what? maybe i'll eventually port them too. just throw all your wishes and crazy ideas into me, and something will stick.

Yancakes wrote
but other than that I'm really loving all the popups telling me what weapon is on the ground, how it compares to my current weapon, all the colour coding etc.
thank you! the colors should be configurable, but… k8ivan has only one active user so far, and he never complained.

Yancakes wrote
Are there plans to have pop-ups showing what items are on the ground when there's a stack as well?
you mean the whole stack, not just comparisons? yes, i will prolly do it later.

the first version of item comparison was writing messages into log window, and i didn't want to clutter the log, so i implemented only the most necessary stats. when i switched to popups, i basically kept the same code, because i wasn't sure if it will work at all, and if i will like it or not. and then i simply forgot to improve it. so i will definitely add other things there.


Yancakes wrote
Oh one thing I've noticed about the 2021 IVAN is that I've always felt leprosy was REALLY easy to contract- almost every run going through the UT I had to go back to the doctor at least once to get healed.
i remember that this was the problem in some older IVAN versions too. it was either fixed in the mainline, or in some fork from which i inherited it.

thank you for pointing that! i definitely don't want leprosy to be that easy to get. it is mostly just an annoyance (run back, return, run back, return), and it doesn't feel like something interesting if it happens too often. you get used to it, and it's harder to miss it accidentally. so i'm with you here.

Yancakes wrote
I think your complaints about the newer version are legit, but I also am aware that it was a huge update that was never properly balanced.
eh… it is really hard to balance such huge and mostly random game as IVAN, especially considering that the game basically a black box. we can change some values here and there, but it is not easy to predict the outcome. and after a lot of playing you got used to it, and may honestly think that it is perfectly balanced.

so i'm not blaming the team for that. just wrote some of my thoughts as somebody who missed almost a decade of updates. sadly, IVAN lacks proper tools (actually, any tools to work with its databases, and this makes everything really hard and tedious. like, if you want to add a new material, you also have to go through most items, adding new material configs, tweaking the probabilities, and such. it quickly gets out of control.

i am trying to convert scripts to SQLite database now, just to see how it goes. if i'll ever succeed, it would be much easier both to query, and to change things. but i need to create a good DB schema for that… and i already redesigned the schema like dozen times.
Yesterday, 5:45 am
Joined: Apr 2, 2014
Occupation: Navastating
Location: Aslona
Posts: 778
I would very much like to see the visualizers.
Yesterday, 2:30 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
that's what we need SQL queries for! of course, while writing the converter, i hit crash bug in my Oberon compiler. i HAET chain bug explosion!
Yesterday, 8:30 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 122
i finally found the bug in my compiler (in case you wonder, yes, i am that crazy: i using my own Oberon compiler written from scratch as my main programming tool). and i partially converted .dat files to SQLite db. i am not happy with the result yet, but i'm planning to do it in two stages: first, full conversion to the current database schema. that schema is not ideal, nor even good, but it will allow me to never ever reparse scripts again. from there, i can work with the DB i have, experimenting with various data representations, don't bother with text parsing anymore. and second, experiment with DB schemes (raw, dictionary, strictly key/value, etc.).

the main problem is that if i'll implement SQLite DB into the game, i'd have to stick with it. so it is better to spend some time trying various schemes than to implement the first one which came to my mind, and then force myself to use something which is barely usable. as i have no prior expirience with designing DBs for games like IVAN, R&D phase is inevitable.

of course, it is possible to convert db back to raw text files readable by the game, so if i'll manage to produce some usable tools, comm. fork may benefit from them too: just convert comm. fork dat files to database, run the tools, and convert it back. or, even better: switch to SQLite db too!
Today, 3:10 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
vasiliy wrote
hm. it should not crash (obviously , just change the resolution on restart. but tbh, that part wasn't really tested: i set the resolution once, and never touched it again. thank you, i'll take a look!

I manually set the resolution, restarted the game was now the same size but the window was bigger- and then it crashed when after the intro title scrawl lol. Changing the resolution is pretty irrelevant when I noticed the magnifier setting though- setting it to like 6x was good (I'm on a 2k monitor), the only issue is that the graphics are a bit blurry which isn't a problem in the 2021 release.


Quote
like what? maybe i'll eventually port them too. just throw all your wishes and crazy ideas into me, and something will stick.
The main thing I was thinking isn't actually a problem- for some reason I thought in yours you couldn't use the arrow keys to go up and down.

The other thing off the top of my head would be having to click "Y" every time I want to open a door- I want to just be able to move in the direction of the door and my dude auto-attempts to open it. Maybe there's a setting I missed? It's a minor thing but stands out when a door takes like five tries to open.


Quote
thank you! the colors should be configurable, but… k8ivan has only one active user so far, and he never complained.
Conveniently I'm not the type of colour blind that can't tell red from green lol, but that might be an issue for some people!


Quote
you mean the whole stack, not just comparisons? yes, i will prolly do it later.
sweet!

Quote
the first version of item comparison was writing messages into log window, and i didn't want to clutter the log, so i implemented only the most necessary stats. when i switched to popups, i basically kept the same code, because i wasn't sure if it will work at all, and if i will like it or not. and then i simply forgot to improve it. so i will definitely add other things there.
I REALLY like the popups. It makes it much more convenient to see and compare what's in the stack rather than having to read the message log or open any inventory. This was an excellent choice.



Quote
i remember that this was the problem in some older IVAN versions too. it was either fixed in the mainline, or in some fork from which i inherited it.

thank you for pointing that! i definitely don't want leprosy to be that easy to get. it is mostly just an annoyance (run back, return, run back, return), and it doesn't feel like something interesting if it happens too often. you get used to it, and it's harder to miss it accidentally. so i'm with you here.
yah leprosy should be rare and interesting to deal with.

Quote
eh… it is really hard to balance such huge and mostly random game as IVAN, especially considering that the game basically a black box. we can change some values here and there, but it is not easy to predict the outcome. and after a lot of playing you got used to it, and may honestly think that it is perfectly balanced.

so i'm not blaming the team for that. just wrote some of my thoughts as somebody who missed almost a decade of updates. sadly, IVAN lacks proper tools (actually, any tools to work with its databases, and this makes everything really hard and tedious. like, if you want to add a new material, you also have to go through most items, adding new material configs, tweaking the probabilities, and such. it quickly gets out of control.

i am trying to convert scripts to SQLite database now, just to see how it goes. if i'll ever succeed, it would be much easier both to query, and to change things. but i need to create a good DB schema for that… and i already redesigned the schema like dozen times.

That sounds like a lot of work, I always wondered why I didn't see more forks for IVAN when some roguelikes seem to be flush with them. It's such a great game so I'm absolutely thrilled to see ANYONE working on it, and I will play your version when I play for the time being! Thank you so much for your work
Today, 3:13 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
Oh yeah- are the noxious orchids one of yours? I don't remember them. They are scary lol
Today, 3:17 am
Joined: Sep 3, 2024
Occupation: Childcare Provider
Location: Victoria, British Columbia
Interests: Retro gaming, retro computers, TTRPGS, painting and crafting miniatures and terrain, wargames
Posts: 9
I just ran in to an ommel cerumen golem in UT1 and eating it after killing it didn't increase my wisdom

EDIT: I turned on wizard mode- it took three whole golems worth of ommel cerumen to get a stat up.
Jump to