ProjectStray - New DarkSouls Style Functionality In The Works

in #blog7 years ago

I am in the process of reworking the health system as well as functionality for a system I call progress tags. Progress tags allow me to store text in an array that can then be later used to quickly and easily check on what the player has done. Its a sleek system that allows me to save progress on the player with minimal effort.


Follow and upvote me on Steemit! (Up votes equal Crypto!)
https://steemit.com/@thecastle

Follow me on Vid.me
https://vid.me/TheCastle

Follow me on Minds
https://www.minds.com/thecastle

Follow me on Gab
https://gab.ai/TheCastle

Here is my Patreon (I use it mostly to support other creators)
https://www.patreon.com/TheCastle

Sort:  

I wish I would understand I would understand half of what your talking in the video - The technicalities of video game development elude me.

But the base idea of the game looks really nice, might try that out once it comes out!

Also :) Would you consider using the gaming tag? This does seem to be very relevant to it

Yeah I can start posting on gaming, though this is more of a game development skew and not so sure it fits in gaming.

it certainly does - maybe once we get the communities update, we could see a specific community that is about game development, but for the moment, it will fit in quite nicely.

Progress tags! Good idea... Instead of keeping track of every container's tag to be true maybe you should keep track of your player's progress tag list.
For example if player_progress_tag_chest_X is false then allow the user to collect contents of chest_X and add player_progress_tag_chest_X to the player's progress tag list. It will me a lot more efficient to do a single list search on your player to see if chestX is false, that to traverse your network of chests to see if the progress tag of ChestX is true.

I only need to track one array for all of the players progress now. And its a very simple check too.

Maybe you like calling lists... arrays... but an array is static and can not change in size during run time. Use lists, they can grow dynamically during runtime

Weird, I modify arrays all the time in scripting for games.

Weird, do you have to set a MAX_SIZE?

The size is usually determined by how many objects I need to store.

Automatically? I don't know about how the unreal engine works. Maybe its actually a list, but they're calling it an array. Which would be wrong, but its ok, as long as they are specific about their intent. There is a key difference with arrays and lists as far as performance goes. For example and Array of game objects could be of size 10, if a game object uses 10MB of memory then the system would be pre-allocating 100MB of memory to have space for game objects, and afterwards you can't change the size of the array. Suppose your array has space for 10 but your game is only using 1 object, then that would mean 90% of the memory allocated is being wasted. Lists are better structures because they grown and shrink dynamically. For example a list of game objects could be of 1 on game init, but then you could add 20 game objects on the fly for a certain level, and then reduce it down to 5, and whatever. As long as you have enough memory in your system you can add as many or as few objects on your list. Lists would be far more efficient as far as performances goes. Just something you should keep in mind.

Same concept with doors. if player used key_A to open door_A then player_progress_tag_door_A is added to the player's progress tag list. Next time you load the level you check the player's progress tag list for every object you're going to initialize in your game. if player_progress_tag_door_A is true then you initialize door_A in an unlocked state.

Yep, in fact I can even do a "pickedUp_Key_A" tag and not even need to do inventory item.

Yes, your player object can keep track of all of the tags in some sort of a tag list.

thats neat man. I like that. also, re follow and upvote back if you dont mind. ty friend.

Coin Marketplace

STEEM 0.17
TRX 0.14
JST 0.028
BTC 59484.75
ETH 2614.53
USDT 1.00
SBD 2.41