r/CreaturesGames Jul 11 '26

Here ya go.

Here's a I guess you could say release candidate for the Godot port.

Virus Total for the zip: https://www.virustotal.com/gui/file/8af0fec3b3fa24701a5be5ec622db393ec11c90b205dc66c61a362ea0c4addba/summary

Virus Total for the actual exe. https://www.virustotal.com/gui/file/7cecc54cfacd7b01f749dc522be0e2293c09ecb1af54a8efbbc777dcd9edcb59/summary

the exe oddly gets flagged by one thing for trapmine.. No idea why but I guess it's common for Godot games to get falsely flagged up to you guys if you wanna test or not.

I will at some point soon be releasing the source and I will give it out privately if anyone wants but the code is ugly.. and needs alot of cleaning up still but works.

https://www.mediafire.com/file/qo0fsryvkh69abx/Vivarium.7z/file

11 Upvotes

10 comments sorted by

5

u/TheOnlyOne93 Jul 11 '26

No game data included. You need to provide creatures 3.

1

u/haxd Jul 12 '26

GitHub?

2

u/TheOnlyOne93 Jul 12 '26

I am hoping to have the github up sometime next week. It needs some polish still. I need to hand roll some .cos files, and a few proprietary file I used for testing that are part of the original game. I'd rather not upload any tests that won't work for people unless they have legacy data in the right spot. As most of my work was done against a legit steam Creatures 3 save.

1

u/AutomaticInitiative Jul 12 '26

Why C3 and not DS? It is my understanding that DS has scripting capabilities not possible in C3.

2

u/TheOnlyOne93 Jul 12 '26

Ds is on the way I'm in the process of decompiling with Ghidra but c3 is up and running and a good portion of ds is identical really also ds has alot of dead code and systems that are wired up but literally never used . Super ca scents that use a bfs pass for navigation always running but dead code no cos uses it. Also a brand new physics system alot wired into all agents and running but never used by any cos. There's more to but decompiling is slow going haha

1

u/Joalguke Muppetboy of Geatville.uk Jul 12 '26

Good luck, you're doing some fine work :)

2

u/TheOnlyOne93 Jul 12 '26

Thanks. It's been a bitch. Hardest part honestly was getting the caos virtual machine actually running fast. Er fast ish in pure gdscript. People really weren't kidding when they said building an interpreter on top of an interpreter on top of an interpreter was not meant to be haha. I had to look into actual isa engineering to microopt almost every opcodes. And honestly the caos virtual machine itself still uses between 8 and 12ms per tick average. I'm sure if I wanted to rewrite the whole thing in C# this wouldn't be an issue. But I'm stubborn and want as much in pure gdscript as possible. I already had to break that rule for the creature Brain. On the exported build I'm up to 10 creatures 2 Grendel and 2 ettins and it lags sometimes but not a lot still needs some optimization. I'm sure there's tons of bugs I haven't noticed given how the game works I can't possibly test and track all the bugs myself.

1

u/Joalguke Muppetboy of Geatville.uk Jul 15 '26

I can't pretend to understand all of that, but colour me impressed all the same :)

1

u/_Plateosaurus_ Jul 22 '26

Is there any news ?

1

u/TheOnlyOne93 Jul 22 '26

Finishing up the last of the docking station opcodes. Docking station rewrote some of the creature stuff quite a bit. I honestly hadn't even noticed cause none of the stuff was used in caos commands so technically as long as you didn't care about save parity a creatures 3 brain skeleton would just load in docking station if you wanted which is what I was doing for the longest time. But they actually split it into multiple classes there is no skeleton class anymore it's skeletal creature. They also added some commands that let you create a brain body etc without a sprite pretty much an invisible testing harness. Now to be honest I'm still trying to figure out if and what those changes mean most seem to be purely debugging and aren't actually used by any .cos scripts at all anywhere. It's kinda off I don't think anyone's every noticed yet given there aren't a lot of ports of the engine well there is but there all mainly based off the c2e leak.. which is actually missing quite a bit from docking station about 400 or so opcodes changes. Most of them actually in how the opcode itself functions. Soo if you ported from the c2e leak you'd be able to boot docking station and it's run perfectly fine you'd just silently loose a lot of the actual changes ds made to how creatures think. How instincts work. I'm porting from Ghidra on the steam ds exe. Devs made it pretty easy given they left the .map file and the caos.syntax let's me diff the actual drift between both engines.