another one IVAN fork (build: 2025, Apr 18)

Mar 13, 6:33 am
Joined: Apr 2, 2014
Occupation: Navastating
Location: Aslona
Posts: 854
Yeah, I think it could just be in their default inventory.

Idea: Applying the radio will first detect all other radios (and thus guards) on the level, and only then will the unauthorised access be detected.
Mar 13, 7:06 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
red_kangaroo wrote
Idea: Applying the radio will first detect all other radios (and thus guards) on the level, and only then will the unauthorised access be detected.
i'm not sure here. my idea is that the radio is locked on the specific user. any attempt to use it should pass "user authencity check" first, and it should be the user radio is "locked on", not just some guard. that's why it detects unauthorized access without even connecting to the network.

p.s.: but maybe i'll change it to your idea, it looks more interesting. the player might want to activate the radio regardless of bad effects to get some intel info. SPOILER ALERT. Click here to see text.
also, explosion is prolly way too strong. i haven't considered the number of radios in Attnam.
Mar 14, 3:56 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
sorry, friends, but i removed "cannot vomit in overworld" exploit. there is no reason to eat the spider and go away anymore: all penalties will be the same. now i myself have to stop doing it.

trivia: the engine fully supports vomiting on the world map. it was blocked because "vomit in direction" code cannot find the direction there — but it doesn't matter anyway.

btw, monsters don't like items covered with vomit. they will equip 'em, but will not run to them. so you can vomit on that armor or weapon, and quickly run to the next level. this is not intended, just a side effect: squares with acidious liquid are considered "dangerous", and finder AI code ignores items in dangerous squares.
Mar 14, 7:11 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
also, i see no reason to keep the internal gfx buffer representation as 16-bit color bitmap. so i started the work to use 24-bit (actually, 32-bit) gfx buffer instead. yes, this will double RAM required for GFX, and RAM bandwidth, but 'cmon! today we can afford rendering 800x600 screen in 32 bit color mode.

also, this will eliminate all direct color manipulations from the source, so switching to another color representation (back to 16, for example) would be much easier.
Mar 15, 6:29 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
added scary animated bat to the start menu (as a cursor). homage to ZX Spectrum "Phantomas" game.
Mar 15, 11:18 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
build 600316 released!
brief changelog:

* merged "take" and "put" actions for containers (use Tab to switch between take & put lists).
* it is now possible to buy a strong-box from a smith.
* it is now possible to add notes to inventory items (press '!').
* monsters will eat up to satiated state, not to bloated (except dogs, dogs are stupid).
* eating will prompt on satiated level, and then on overfed. because you need quite a fast reaction to stop eating on satiated, and last time i checked IVAN wasn't an arcade game.
* fixed bug with "w" and "W" commands: refusing to wield unusable weapon won't restore previous wielded weapon.
* better pray UI: aligned text, added info about diety relation to the player.
* Merka and his guards should attack monsters which attack the player.
* Attnam will not immediately turn hostile when you attack somebody. it now works more logically: attacking citizens will alert guards, killing some guards will alert temple guards, and so on.
* better handling of Petrus' wives #3 and #7. (imprisoned one may join, she won't leave Attnam without another one, etc.)
* it is now possible to turn on minimap on position questions.
* removed "no vomit in wilderness when poisoned" cheat. sorry.
* varios fixes, big and small.
Mar 17, 5:11 pm
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: 43
I'll DL the windows version tonight and give it a run
Mar 17, 7:31 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
thank you! please, note that there is a bug with loading bones (i keep forgetting about it). if the game crashes on entering a level, it is prolly it. simply restart the game and load the save again — it should be rolled back to the last valid save (usually autosave).

also, i haet breaking bones and saves with each new public build, sorry. but alas… to make saves more reliable i need to completely replace save/load system: use some kind of tagged structured container instead of flat files. i am planning to do it someday… but i don't know when. i am making small changes to help saves to survive database changes, though. not much, but at least something.


p.s.: if you have only one save, "start game" will simply load it. yes, there is no "official" way to start several games. not an oversight. go move that save file somewhere if you want to do that.
Mar 17, 11:22 pm
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: 43
I'm dumb. WHere *are* the windows binaries? I have found them before lol, I found this page http://ketmar.no-ip.org/fossil/k8ivan/index.cgi/index that says the most recent up date is March 7, 2024...?
Mar 18, 12:51 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
i'm always updating the first post here. the most recent binaries are always attached to the first post. repo update is less frequent, because i'm often forget to do it.

p.s.: "600316" is the "year, month, day" number, so you can look at the build number and see when it was uploaded.
Mar 18, 5:11 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
finally made Coat of Arms to work almost the way i wanted. it adds imaginary second set of arms, so you have two arm attacks for the price of one. yes, this is quite OP item — but that's the idea. but believe me, it is not OP in comparison with Maybe Blade! with high Wis Maybe Blade simply instakills anythig. no, don't look at the sources, there is no such weapon. Maybe Blade is a planned perk for a planned quest.
Mar 18, 11:35 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
added health bar to NPCs. the idea is that IRL we can usually see the condition of our enemies, so hp bar gives a rough approximation of that. i'm not totally happy with it, but cannot think out something better for now. it is turned off by default.

tbh, i wanted it mostly to make the fight with Jenny less boring. because you hit her, and hit, and hit, and hit, and… nothing changes, but then BOOM! she's dead. for me, this is way bigger immersion breaker than hp bars. also, it is fun to see how often you miss that pesky hedgehog, for example. of course, the log tells this, but let's be honest: nobody reads the log!
Mar 20, 3:14 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
oops. due to some oversights, Petrus will not summon guardian angels. also, becoming a high priest will not make Attnam friendly. fixed (i hope). and destroying walls of guarded rooms never provoked hostility of the guards.

splitted "char.cpp" and "game.cpp" to several independent compilation units. "char.cpp" is ~500 kb. not good. especially with my bad coolers: recompiling it each time makes my CPU super-hot. sigh.
Mar 20, 7:44 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
more changes to team system. the shopkeeper will not directly attack shop perpetrators, there are guards for that. the shopkeeper will intervene only if there are no guards around (or all guards are dead). shop guards are in their own teams now, and they guard the shopkeeper (there is a new property for this); the shopkeeper is their leader while alive.

that is, if some monster will kill the shopkeeper, the guards will loot the shop (because there is no shop master anymore). that's how hired guard acts, i believe.

internally the engine is able to create new teams on the fly, so it is theoretically possible to implement proper monster infighting, for example.
Mar 21, 9:07 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
the thing i hate in literally all games is pet/ally management. that's why i'm playing IVAN without pets (and never finished it . pets sux. they often do what you don't want them to do, and vice versa. they run away. they cannot equip things from their inventory (fixable, but i'm too lazy for that . that is, pets is annoyance, and i am really sad that you literally need pets to beat the game. ok, you prolly can kill Elpuri solo, but the further you go…

and the worst thing with pets is that i don't know how to fix them. direct control is even more boring. adding more pet options is still not flexible enough, and basically becomes a scripting with unusable UI.

this might look like a small problem (or even not a problem at all for other people), but for me it is so important that i refuse getting pets at all. (yes, i immediately selling scolls of taming and lyres, as i have no use for them.) and i desperately need a solution… but i don't know how that soultion should look. sigh.
Mar 21, 10:30 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
UT vault spawned on Jenny level should have limestone walls, otherwise it looks out of place. i implemented simple way to replace content script tiles according to level; this is a dirty hack, but it does what i need. i might extend this feature later, but for now it is enough.
Mar 22, 1:01 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
death from the trap now adds "set by the player" if it was set by the player; gas trap now has recharge time.
Mar 23, 2:49 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: 43
vasiliy wrote
the thing i hate in literally all games is pet/ally management. that's why i'm playing IVAN without pets (and never finished it . pets sux. they often do what you don't want them to do, and vice versa. they run away. they cannot equip things from their inventory (fixable, but i'm too lazy for that . that is, pets is annoyance, and i am really sad that you literally need pets to beat the game. ok, you prolly can kill Elpuri solo, but the further you go…

and the worst thing with pets is that i don't know how to fix them. direct control is even more boring. adding more pet options is still not flexible enough, and basically becomes a scripting with unusable UI.

this might look like a small problem (or even not a problem at all for other people), but for me it is so important that i refuse getting pets at all. (yes, i immediately selling scolls of taming and lyres, as i have no use for them.) and i desperately need a solution… but i don't know how that soultion should look. sigh.

I have killed and eaten my dog in the first couple turns of every IVAN game I've ever played.
Mar 23, 6:01 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
yeah. when i got bored of that, i implemented "start with no pet" option.

it is quite easy to get a mistress in UT too, and she's even more annoying than a puppy.
Mar 29, 4:55 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
i have some hardware problems, and i cannot even properly build k8I for now. so i'll try to build the win binary with the latest fixes, and then there will be some hiatus. sorry. i will return when/if i'll be able to fix everything (or at least to fix it enough to be able to go on). i still want to implement at least random encounters, so it's not like i lost motivation again.
Apr 7, 10:33 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: 43
Hopefully I see you again sooner than 7 years xD
Apr 10, 4:54 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
it's hard to predict. but i really want to implement several more things before going into cryostasis again.
Apr 12, 5:11 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
let's start with something simple: i replaced built-in regexp engine. the new engine doesn't support captures (we don't need them anyway), but it is not prone to exponential explosion.
Apr 17, 10:26 am
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
i still think that k8I needs scripting. most special character/item code should be scripted, not done on C++ side. so, scrpting, take 2. i fully expect this attempt to fail too, but cannot resist the temptation. this time i'll try to create a proper compiler and VM, and use automatic API generation. at least that's the plan.

the thing i haven't decided yet is language syntax. making it C-like will allow easier code transition… but i HAET C, i prefer Oberon. i will prolly go Oberon way, just to make it more annoying to everyone, because i know that people love to learn new scripting languages! of course, whatever i choose, it will be strongly typed.

tbh, this is just an excuse to write yet another compiler. because i love writing compilers.
Apr 17, 10:55 pm
Joined: Sep 5, 2010
Interests: make more ivans!
Posts: 430
published the new build, because i don't know how long scripting may take before i drop it.

brief changelog:
* added option to control popups opacity.
* added optional NPC health bar (i'm not sure if i'll keep it, though).
* fixed bug with new Attnam hostility hierarchy: Petrus should summon guarding angels.
* reworked team system. shop guards are in their own team now, and shopkeeper will not intervene if there are guards around.
* death from the trap now adds "set by the player" if it was set by the player.
* gas trap now has recharge time.
* replaced built-in regexp engine with another regexp engine.
Jump to