• Categories

    Latest comments

    No comments to show.

    Welcome back to the Solivium development blog! Another week has passed, and the game is steadily growing in depth and complexity. This was a productive week, here’s what I accomplished.

    This Week’s Highlights

    • Stats Screen: A new stats screen has been added, activated by pressing “Z” (for “Ztats”). While in this screen, the game is paused, allowing players to review their character stats at any time.
    • Experience System: Players now gain experience points for defeating enemies, bringing us closer to implementing progression and leveling mechanics.
    • Console UI Improvements: The Console UI now supports scrolling, making it easier to review game events.
    • Inventory System:
      • Added player inventory and integrated it with the UI.
      • The inventory displays item names, dice modifiers, and quantities.
      • Equipped weapons and armor now influence the damage dealt and received, adding strategic depth to equipment choices.
    • Ranged Combat: Introduced the bow as a new ranged weapon for the player.
    • Treasure Chests and Looting:
      • Added treasure chests to the game world for looting.
      • Defeated enemies now drop treasure chests with loot tables.
      • Implemented a looting screen (still working on limiting item quantities for looting).
    • Bug Fixes: Fixed memory leaks to improve stability and performance.

    Screenshots and Previews

    Here’s a glimpse at this week’s updates in action:

    Ztats screen
    Ztats screen
    Inventory Screen
    Inventory screen
    Treasure chests in the world, also, I need to initialize the gold variable to 0
    Looting screen

    What’s Next?

    Here’s what I’m planning to tackle in the coming weeks:

    • Add enemy weapon and armor stats to damage calculation
    • Allow to specify how many items to loot
    • Create a simple title screen for testing moving between scenes
    • Saving and loading the game
    • A character creation screen
    • Leveling up system

    Final Thoughts

    I’m happy with the progress this week, specially because the inventory system tends to be one of the tasks I don’t like doing too much, I’m expecting to start working on towns in the next couple of weeks.

    As always, your feedback is invaluable. Let me know what you think, and stay tuned for next week’s update!

  • Categories

    Latest comments

    No comments to show.

    Welcome back to the Solivium development blog! It’s been an interesting week working on the combat system and learning how to store and play audio next to the sprites in the data file.

    What’s New This Week?

    This week’s focus was on enhancing gameplay mechanics and polishing combat interactions. Here’s what I accomplished:

    • Turn Management: Players can now pass their turn using the ‘P’ key or the spacebar.
    • Character Sheets: I’ve introduced character sheets for both the player and enemies. For now they only have stats for: name, HP, Strength, Defense and Agility.
    • Combat Enhancements:
      • Enemies now attack both at melee and ranged distances, ranged attacks can collide with mountains.
      • The player can now attack enemies, currently limited to melee range.
      • Strength, defense, and agility stats are used to calculate hit chances and damage.
      • Enemies also spawn outside the player’s view every 15 turns, although they might not appear if I can’t find a valid location for spawning them, I’m thinking on changing this to keep searching for a spawn location. I’m not so sure yet.
    • Sound Effects: Added sound effects for key actions like walking, attacking, and missing attacks. I’m using old school chiptunes sounds, I’m not sure if keep them, remove them or change them for more modern sounds, I think it would be weird to have modern sounds with everything else being oldschool.

    Screenshot

    Here’s a glimpse of what’s new in Solivium this week:

    What’s Next?

    This next week, I plan to:

    • Create the inventory system.
    • Allow the player to equip armor and weapons and use their stats during combat.
    • Create ranged weapons to allow the player to attack from a distance.
    • If I have enough time I will create loot and experience when defeating enemies.

    As always, thank you for following along with Solivium’s development. Your feedback and support mean the world to me. Stay tuned for more updates, and don’t forget to share your thoughts in the comments!

  • Categories

    Latest comments

    No comments to show.

    Welcome to the first development blog for Solivium, my indie game project that seeks to capture the magic of old-school RPGs while shedding the constraints of technical limitations. This project is a personal love letter to the early Ultima series and the games that shaped the golden age of computer RPGs.

    What is Solivium?

    Solivium is a turn-based RPG built in C, leveraging a CGA-inspired palette for that nostalgic retro aesthetic. My goal is to create a game that feels like it belongs to the early 1980s but with the freedom to design without the hardware restrictions of the time. The game combines classic mechanics like grid-based movement, stat-based progression, and turn-based combat with modern refinements to provide an immersive and challenging experience.

    Progress So Far

    Building Solivium has been an exciting journey so far. Here are the key features I’ve implemented:

    • Renderer: I’ve set up a custom renderer using GLFW and glad. This forms the foundation of the game’s visuals, showcasing the CGA-style graphics and maintaining the old-school charm.
    • Map and Console UI: The game now has a working map and console interface, allowing players to navigate the world and receive feedback as they play.
    • Player Mechanics: The player character is functional with movement.
    • Turn-Based Logic: I’ve implemented turn-based mechanics, ensuring that both the player and enemies act in turns.
    • Enemy AI: I’ve begun work on enemies. At this stage, they can follow the player.

    What’s Next?

    Moving forward, I’ll focus on refining enemy behavior, adding combat mechanics, and expanding the game world.

    Thank you for joining me on this journey. I’m excited to share more updates and hear your thoughts as the game develops. Stay tuned for the next post, where I’ll dive deeper into the combat system and showcase more of the world of Solivium!

  • Categories

    Latest comments

    No comments to show.

    I wanted to start this site by talking about my latest game development project, “Quest For Immortality.” This is a first-person RPG inspired by classic dungeon crawlers like Ultima Underworld, Daggerfall, and Might and Magic. It’s a game that merges the deep exploration of these titles with the unpredictability of roguelike elements found in games like ADOM, Nethack, and Caves of Qud.

    Roguelike Meets Retro RPG

    I’m aiming to create a world filled with procedural dungeons, intense combat, and a sense of exploration reminiscent of those early RPGs. I also want to include some elements of roleplaying and life simulation. I’ve always been fascinated by the potential of all the features in Daggerfall—ever since I played it back in 2007, I knew that this was the ultimate project I wanted to make.

    2.5D Sprites in Pixel Art

    The game’s art style draws from my love of pixel art and retro aesthetics. I’m taking inspiration from the gritty 2D sprites of Ultima Underworld. I’ve tried working with 3D models, but this style resonates with me creatively.

    Why Godot?

    Choosing Godot as the engine for this project was an easy decision. Not only do I enjoy working with it, but its FOSS (Free and Open Source Software) nature aligns with my development philosophy. Godot’s flexibility allows me to craft complex mechanics while giving me the freedom to modify the engine if needed. It’s been great to see the progress I’ve made using it so far.

    The Challenges Ahead

    I’m well aware that building an open-world game with procedural dungeons is a huge undertaking, especially as a solo developer. Keeping track of every detail and ensuring that each playthrough feels unique is no small task. However, this challenge excites me. I’ve already had some experience with projects of this scope, including Stygian Abyss, which I co-developed with Slash for the 7DRL (7-Day Roguelike) Challenge back in 2015.

    Current Progress

    So, where am I now? I’ve implemented basic combat mechanics and am currently diving into the inventory system and item interactions. It’s a crucial step in bringing the dungeon-crawling experience to life, allowing players to manage their resources and gear effectively.

    That’s all for this first update! I’ll be sharing more of my journey as I continue working on Quest For Immortality. Stay tuned for more development insights and progress updates.