Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411471 Posts in 69369 Topics- by 58423 Members - Latest Member: antkind

April 23, 2024, 09:37:08 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogs[Cardboard Wizard] 2D Trimetric Action Adventure
Pages: [1]
Print
Author Topic: [Cardboard Wizard] 2D Trimetric Action Adventure  (Read 730 times)
TheArtistJiii
Level 0
***



View Profile
« on: October 06, 2021, 05:31:17 PM »

Cardboard Wizard

Intro

Hello, this is a devlog for a game that i've been working on for awhile now. I decided to start this because I wanted a place to show this game in its very very very unfinished state to hopefully get feedback and ideas for it as I develop it. I'm a solo developer which means im wearing most hats within reason. I cannot confidently say that either programming or art are my forte. I'm probably more capable at coding than I am at art but as confident as I am in programming, I still cannot call it my forte. I'd say solving problems is my forte and when it comes to making a game, there are nothing but problems to solve, which is good because that's a skill that needs nurturing.

The game is 2D topdown trimetric action adventure game where you play as a wizard named Leonard with the ability to conjure and manipulate cardboard. Explore an unknown world, solve puzzles and fight shadow creatures that want you to not be alive.

The game is being built in Godot.
Goal

My biggest goal is to finish this game. But in order to do that I need to do a whole bunch of stuff that i've not been doing.

I've spent the majority of my time on this game creating some semblance of a backbone which includes different game systems, a map editor, an art asset pipeline and varying game mechanics. But there's still no game to speak of content wise. I've created and thrown away many different art asset ideas which includes animations and sprite sheets, refactored and iterated upon code to hell and back, and the result of that is an unfinished middling piece of work.

Here are some of my Mile Stones For The Game That I would like to hit in a reasonable timeframe.(not in any particular order)

Content Goals
  • Just like Finish The Game(Potentially too unrealistic for right now)
  • Finalize Player Controller
  • Improve AI Combat Behavior
  • Add Player Ally Character
  • Add 3 Additional Enemy Types
  • Add Important Channeling Mechanic
  • Create Maps For 3 Areas
  • lighting(kill me)

Now this list is somewhat vague and will need to be broken down to better highlight and understand what needs to be done so the overall goal is finished. I've actually started working on....most of these. But there is still alot of work left to do. Hopefully I stick with this devlog to chart my journey. I will probably only update this Thread monthly or after achieving progress that I consider substantial. I'm open to any questions you may have regarding the game(within reason).

To End this. here are some Visuals and concepts for the game.(some in engine, most not)


Some intial concept sketches i drew at the beginning of the project


Initial Character Sketch and design of the main character.


Second Iteration Of The Character Design


Messing With Color Palettes


In Engine Shot(WIP)

I will add gifs when I relearn how to USE OBS. Most of the things i've recorded have been with  the free version of bandicam lol and there's the awful text at the top. Cry
« Last Edit: October 06, 2021, 05:41:11 PM by TheArtistJiii » Logged

"I'm Jiii" -Jiii
TheArtistJiii
Level 0
***



View Profile
« Reply #1 on: November 18, 2021, 06:28:36 PM »

Cardboard Wizard
Update 2

Good news everyone. I've finished the game! Cheesy

On a serious note, I have been fantasizing about finishing this game as of late. I guess working on it for so long was bound to chip away at some part of my psyche. This post is a bit late. I had to move and do some cleaning the last week of last month so did not do much deving for a week or so  Roll Eyes. But excuses aside, where did we leave off.....

Recap

I set out to accomplish some mile stones. Specifically the ones in the first post. For the sake of my mental health, I decided to tackle only a few of these instead of all at once:

  • Finalize Player Controller
  • Improve AI Combat Behavior
  • Add Player Ally Character

Player Controller


The player not only has control over their avatar, but over an entirely separate entity within my games ecosystem(cardboard). So for this part, I had already implemented the majority of the player characters cardboard capabilities(say that 3 times fast)

Summon - conjure up cardboard element(limit is 3 at the moment)
Strike - to swing it around to bludgeon people
Release - to toss a cardboard element about relinquishing control of it
Recall - to call a discarded cardboard entity back into your sphere of influence


I also made a selection wheel in order to select which ability to use.
The aspects that I needed to finalize were related to the Release and Recall actions.
The player is able to use the release ability on cardboard and to attach the cardboard to other entities. the recall ability allows the player to retrieve the box.

Unfortunately the "Attachment system" I created was convoluted(my middle name) half broken and coupled to all hell in the codebase. Luckily I've rewritten it, and it now works better than ever. I decide instead of having entities manage their end of the attachment relationship, I would delegate the handling of that relationship entirely to a separate Manager Object. This object allows attachments to be formed when an attaching box intersects an attachment point and handles the dynamic of that relationship depending on the hierarchy of each entity in the relationship. Since attachments are a two way relationship, this object also allows either end of the attachment to break the attachment, which will be useful in different circumstances.

(left) Rock in box. (right) Box on enemy head(WIP)

there are only a few things left to implement for the attachment system and then the player controller(atleast this iteration) will be finalized.


Improve AI Combat Behavior & Add Player Ally Character


I decided to group the last two together because they pretty much tie in with one another. Essentially I am working on both an enemy AI and an Ally AI at the same time. They are 95% identical in regards to the code they run on. I just created a different Sub-controller for The Ally Characters overall Goal/State handling since they can be in additional states that enemies cannot. I will probably have to do the same for Bosses later.
My AI essentially use a state machine in conjunction with rules based decision making.
Example of one of those rules:

"rule":   {"target_in_view":true, "target_dist_lesser":150.0},
"action":"avoid"

Rules are pretty simple and the state machines dictates which rules the AI evaluates before coming to a decision.

The problems i needed to solve in regards to AI were two fold for this month. One being that AI did not have a good way to manage multiple targets, i.e the player and the ally. The old method i used was to have the AI only be aware of potential targets upon them entering the AI's sensor field. This was limiting because targets were easily picked and forgotten when constantly entering or exiting the AIs field. I decided it made more sense for all potential targets to be fair game(no pun) from the outset. And The AI's state machine would dictate what targets for both the enemy and ally character AI depending on the state they were In I also gave current selected target a higher priority than other potential targets during the evaluation process. So Far it is working fantastically. Though there are others things that need to be implemented, which brings me to problem two that I need to solve. Defining what constitutes combat. Currently I have the following listed as drivers/initiators of combat

Player aggros an Enemy that is in the environment
In Game Event/trigger

If you didn't notice, I did not list the players ally as a driver of combat. That is probably subject to change eventually, but my initial reasoning is based on the idea of the players agency as well as being informed on the current state of players hating to have to "escort" an npc that keeps triggering everything from a squirrel to a slime to level 100 enemies(in your average party based rpg lol). But that last point not be relevant depending on how I define the relationship of the player and the ally in the context of gameplay and the narrative....

As for the Ally I have pretty much created a skeleton for them(figuratively). I need to add combat capabilities and animations(as well as finishing their design....will unveil in the next devlog...or 2)

Anyways, so these last few weeks have been anything but eventful in regards to working on my game, but it does feel like i'm getting closer to that fabled release. Lets see if I can have the game out by christmas  Cheesy

I will hopefully finish most of the above by the end of the month then I will start working on these things next:

  • Add 3 Additional Enemy Types
  • Add Important Channeling Mechanic
  • Create Maps For 3 Areas

I've actually started planning two other enemy characters as well as sketching level design for an area, but i'll save those for next time.

Also i'm still figuring out OBS so forgive me for lack of gifs....

Logged

"I'm Jiii" -Jiii
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic