You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server

Recent posts

#1
PC, Mac & Vintage Computers / Re: Shards of Uvutu
Last post by 123outerme - Today at 01:59:25 AM
Every time I release and playtest with friends I find more bugs. This time, the logic I created to handle the NPCs' shops went way out of wack.

If I add an item to an NPC's shop list, next time that NPC loads, I want them to take it from their shop "listings" and instantiate that into their inventory that they can then sell it from. This way, I can avoid resetting the NPC's inventory entirely when I add new items to their shop offerings. As well, items the player's items they've sold to that NPC persist in the NPC's inventory, so resetting the inventory means potentially losing the player's items they could go back to buy again.

However, what actually happened with my system, is that no NPC that was last loaded in v0.1.0 had anything in their inventory on a fresh save or a save in v0.1.0 or after. But if the last loaded game version before this was v0.0.9, the NPCs could all get their items properly.

I'm kind of astounded by this one so I'm going to post the relevant code and see what you all think. Written in GDScript:
func add_shop_items_to_inventory():
    # ... process removing inventory slots that don't belong anymore ...
    # for each shop item slot in the NPC shop object:
    for shopItemSlot: ShopInventorySlot in npcShop.shopItemSlots:
        var existingSlot: InventorySlot = inventory.get_slot_for_item(shopItemSlot.item)
        # if there is no slot for this object and it should be updated: add it to the inventory
        # should_add(version) takes in the game version the NPC was last saved in, and returns true if the shop item was created after that version for this NPC:
        if existingSlot == null and shopItemSlot.should_add(data.version):
            inventory.add_slot(shopItemSlot)

The solution I came upon was simply to turn that last if conditional into this:
        if existingSlot == null:
            inventory.add_slot(shopItemSlot)
As I no longer destroy inventory slots for NPCs if there are 0 items in that slot. This way, if the slot exists, it's already been created for the NPC. If it doesn't exist, it's an item I added to the shop listings since the last time the save file was loaded. I don't really like this solution, though, because it requires me to save essentially meaningless data -- potentially a whole bunch of empty item slots. If I simply could track the last saved version of the NPC (which I already do) and use that combined with the version that each shop listing was created in, I could definitely determine which items have been added to the shop listing since the last time this NPC was saved.
#2
PC, Mac & Vintage Computers / Shards of Uvutu
Last post by 123outerme - July 07, 2024, 10:15:09 PM
Shards of Uvutu is a indie turn-based RPG for PC, developed by me, in the Godot game engine, with plenty of help from some very talented individuals in the music and SFX department.
It's is a creature-collector RPG about a mysterious cave filled with magic crystals, and the ensuing struggle for power. Explore the landscape, fight through turn-based battles, and spend Shards in order to summon minions and gain an upper hand!
* Retro turn-based combat system!
* "Attune" with your minions to befriend them and summon them any time.
* Customize your stats and your minion's stats to your liking, using equipment and Stat Points!
* Fight for the Radiant Cave and take control of the source of Shards!
* 16-bit inspired pixel art graphics.
* Planned for a 20+ hour experience, including story, sidequests, puzzles, and challenges!
Already a year in the making, with 6 more months planned until a full release. Until then, I am now releasing the v0.1.2 demo with the first ~5 hours of content available! The save file you start in the demo SHOULD be compatible with the finished release, barring any stat rebalancing or quest modifications I may have to make. You can find the demo on my Github page, linked here. It will be releasing as a free game once it is complete!
#3
Music Showcase / Re: Not a Number: Black Millen...
Last post by Dream of Omnimaga - June 28, 2024, 09:20:10 PM
This sounds pretty good. I especially like the guitars and melodies. I'm glad you are still making music :)
#4
Music Showcase / Not a Number: Black Millennium...
Last post by racingstripeAV - June 28, 2024, 03:46:34 PM
More than a century prior to Róçtok's takeover of the Eastern Union of Kingdoms, the world of Folúp' was almost pushed to the brink: Mysteries unravelled, histories rewritten, and civilisations rediscovered. And this story shall also be told; the puzzle will soon be finally solved, one piece at a time...

Tales of Amis'fiça: Black Millennium — Act Two: Found (2024)

Tracklist:
01. No Ruby Slippers 3:06
02. The Nexus 6:08
03. Iron on Iron (Battlecry) 8:21
04. One Million Words 7:35
05. Nadir... 6:25
06. ...Zenith 6:08
07. O Naïve One, You and Your Friends are Far from the First 9:51
--- I. The Escape
--- II. Heart of the Matter
--- III. Collision Chaos

08. The Silent Hero 5:31
09. Homeward Bound 9:34
10. Someone Else's Story — III — Tkáyo's Voyage 9:50

We rejoin our heroes as they continue their quest to rescue Nason', Girudì's fortress inching ever closer. But as they approach their destination, Tkáyo still cannot help but feel responsible for everything that has befallen them...

It was kind of obvious that calling the previous album "Act One" meant there was going to be a sequel, wasn't it? Believe me, I'm nowhere near done with telling this little story arc.
Might be a bit more of a wait for the next album, though... got one or two ideas that I'd like to get out of the way before tackling that one; Probably looking at 2027 at the latest.
#5
Website News / No, this is not Reddit. No, th...
Last post by Dream of Omnimaga - June 28, 2024, 01:48:51 PM
We got a new theme that adds some of the features we wanted a long time ago, such as defaulting to the global list of recent topics. While this is still not tag-based when it comes to topic categories and sub-forums, this allows us to keep Simplemachines software rather than converting to something else. Of course this means we will have to change themes again once SMF 3.0 comes out.

In the meantime it's still possible to switch back to one of the previous themes (dark or light), although some features such as EzPortal will be disabled.

We still need to fix attachments as well
#6
Calculator Development / Re: Flappy Bird on HP Prime
Last post by @Randomboy.381 - June 22, 2024, 04:39:25 AM
 (-_(//));
#7
Randomness / Re: I gut lunix and i got 6 vi...
Last post by Dream of Omnimaga - June 15, 2024, 04:04:53 PM
#8
Web / My new webwebsite (music landi...
Last post by Dream of Omnimaga - June 10, 2024, 06:21:55 PM
I ditched those landing page services such as Linktree, Toneden/Fanlink, Hyperfollow and HypeEdit and instead made my own at https://dreamofomnimaga.page , where customization options are not hidden behind a paywall. The difference is that instead of having one landing page per album and compilation I put everything on the same page. However the navigation should get you to any release you want quickly and all the available store and streaming services are linked below each release.
#9
Website Talk / Re: Attachment upload fixed, e...
Last post by IreneFCK - May 16, 2024, 12:03:05 PM
Quote from: Dream of Omnimaga on April 30, 2020, 06:14:09 PMdjlogo.png

Attachment uploading has been fixed. However, after uploading an attachment it is possible that you might no longer be able to type in the post form, so you might have to hit Reply then Edit/quick edit to continue writing your post

1000thtopic.png

Test Attachment 2 link

[attach id=823]Not djlogo.png[/attach]

[attach id=1818]Test Attachment 2 link[/attach]

Also, it is now possible to embed your attachment inside the post rather than just at the end. You can even embed an attachment from a different topic in another topic!



When considering the value of a Ferrari, seatbelts might seem like a minor detail, but they actually play a crucial role in estimating its worth. High-quality seatbelts not only enhance safety but also indicate the overall condition and maintenance of the vehicle. A well-maintained Ferrari with intact seatbelts suggests that the owner has taken good care of the car, potentially increasing its value. Moreover, seatbelts are an essential component for collectors and enthusiasts, who prioritize authenticity and originality. Therefore, when evaluating the value of a Ferrari, the condition and functionality of its seatbelts should not be overlooked. For expert assistance in crafting detailed assignments on automotive topics like this, I highly recommend checking out https://essaypro.com/assignment-writing-service assignment writing service. Their team of professional writers can provide comprehensive analyses and insights tailored to your specific needs.
Thanks for the information!
#10
Randomness / Re: I gut lunix and i got 6 vi...
Last post by Dream of Omnimaga - April 25, 2024, 08:52:42 PM
test
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal