Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
LF2 GM Progress Thread
#61
(06-26-2014, 07:22 PM)Bamboori Wrote:  i could do a windows only version that is moddable...
or make a helluva character editor.

If you would like, I'm working on a similar project at the moment. My idea though is that I create a lot of different customizable clothing pieces and drop their position correctly on a 'base anatomical frame', stamp it into a bitmap/png/whatever is easier/lower HDD usage and then that would save the character and all of their moves/etc before the game actually begins (essentially producing what would be a spritesheet in the style of LF2 characters).

Also doing it through the GNU GCC compiler for C++ so cross compatibility will not be as limited. Once again, just a thought, if you need or would like the assistance (and giving me general practice/a target to reach) then I would be more than happy to do so. Can PM me on here or skype me (we both know you can haz my skypeeez).

As far as it goes though, AWESOME.

Eddie
One day, I shall become, TUTORIAL-MAN: Superhero of writing overly long, overly annoying tutorials which most people probably won't read, but will give it a stab at the first 5 lines!
Reply
Thanks given by: Bamboori
#62
uhm... so i think i can make it customizable after all :p
im not sure to what extend youll be able to use the extra functions (ifs and switches in frames etc), but ill see what i can build into the parser without producing too much lag.

now i just gotta see about online multiplayer :p
Reply
Thanks given by: A-Man
#63
HA! So you ended up with a parser too :P. But yeah, coding basic stuff like switches and ifs for your scripting language can get as frustrating as hell (THAT"S WHY I LOVE INTERPRETED LANGUAGES MORE). Goood luck on getting the networking done XD! Keep this up!
[Image: signature.png]
A-Engine: A new beat em up game engine inspired by LF2. Coming soon

A-Engine Dev Blog - Update #8: Timeout

Reply
Thanks given by:
#64
:P well i realized i can do most stuff with .ini data.

it will look a lot like xml for you guys.

but yeah networking will be hell xD
Reply
Thanks given by:
#65
so the entire data handling will be done via .ini files.
.txt and .bin would work as well, but i'd need to parse everything, whereas in ini files i can read out variables way easier.

....just as i was writing down my current method i realized it could be done way easier :D

right now i would have to create a dummy object for every possible object/background/char etc.
ill see what i can manage to come up with.

right now my method would be:
  • a set of lets say 1000 dummy objects, each named 0-999.
  • for every 'id' there would only be a path for the .ini file.
  • in the .ini file there would be an identifier section, which then would copy the type of the data (background/char etc) to the corresponding dummy object.
that would also mean that the 'id' would be limited to exactly 0-999.

im not too sure whether i will include backgrounds in this as they are coded differently altogether.
im not really sure about backgrounds at all yet tbh :D
Reply
Thanks given by:
#66
I don't like that organization. What speaks against a map? You'd still have the linkage between id and object but you won't be limited to those id-values. Then again, I don't know GM but your current method seems... well, not technically wrong, just awkward :p
Silverthorn / Blue Phoenix
~ Breaking LFE since 2008 ~

"Freeze, you're under vrest!" - Mark, probably.

» Gallery | » Sprites | » DeviantArt
Reply
Thanks given by:
#67
(07-05-2014, 06:05 PM)Bamboori Wrote:  so the entire data handling will be done via .ini files.
.txt and .bin would work as well, but i'd need to parse everything, whereas in ini files i can read out variables way easier.

....just as i was writing down my current method i realized it could be done way easier :D

right now i would have to create a dummy object for every possible object/background/char etc.
ill see what i can manage to come up with.

right now my method would be:
  • a set of lets say 1000 dummy objects, each named 0-999.
  • for every 'id' there would only be a path for the .ini file.
  • in the .ini file there would be an identifier section, which then would copy the type of the data (background/char etc) to the corresponding dummy object.
that would also mean that the 'id' would be limited to exactly 0-999.

im not too sure whether i will include backgrounds in this as they are coded differently altogether.
im not really sure about backgrounds at all yet tbh :D
Looks promising! Not really sure what you meant by "create a dummy object for every possible", but that sounds more like allocating an array of your object's type for all the objects that are going to be loaded; and that's how it was done with LF2 as well. But let me share my thoughts :P:
1-Allocate an array of type "object" for the game objects, another array of type "bg" for the bgs, and a 3rd one of the type "object_copy" that stores info about objects on the screen.
2-The "object" array will store the actual objects that are loaded fir the game; including the frames, sounds and the sprites.
3-The "object_copy" array, however, will store data and info about objects on the screen (its current frame, x_y_z_position, the current HP, MP, x_y_z_velocity, the key clicks buffer..etc).
4-In your object[xyz].update() function, set a parameter of type "object_copy" to pass the data of that object on the screen; You surely don't want to load bandit's sprites and stuff 3 times in order to have 3 of them on the screen. You will just load it once, and then create 3 instances of "object_copy" that stores each one's position, hp and etc.

Goood Luck! (finally getting to the fun part, eh?)

Edit: Plus I think that actually specifying the ids like that makes more sense, since an id is supposed to act like the "address" of an object/oranything. Plus it can force modifiers to be more organized.
[Image: signature.png]
A-Engine: A new beat em up game engine inspired by LF2. Coming soon

A-Engine Dev Blog - Update #8: Timeout

Reply
Thanks given by:
#68
sorry... i dont quite get the difference :p
right now it would look like this:

Code:
0 = \data\template.ini
1 = \data\davis.ini
2 = \data\dennis.ini

edit: ninjad by a-man :p

i think i need to explain how game maker works:

you have a resource tree with all objects, sprites, sounds etc stored:

[Image: cptdfbfk03gdgvkmi.png]

it is possible to add and assign new sprites and sounds, but not objects.

edit: im a bid idiot... i cannot change variables of objects that do not exist yet in the game <.< means ill actually only need one object that will load the id related data that has been importet from the ini.
that may need too much processing power though... ugh.

what i mean is: player spawns object with ball id -> object reads all data from the ball id -> object becomes ball.

maybe i could optimize this a little by only loading the needed variables in the first frame. ill really have to see about that...


eydeyt:
thanks to someone else i (finally) have a clear plan of how to load the data/ini files. but there will be a tag limit per frame, sorry. curses! no 3d arrays in gml
Reply
Thanks given by:
#69
due to the way game maker studio handles imported files, i may have to make loading screens before each fight/stage etc to prevent memory overloads.

also, game maker studio has no available function to get the .exe folder. instead youll have to add content in the local appdata, similar to modding minecraft (at least how it was in the old days).

and i will include the original game content (sounds, images etc) in the exe since that way i can handle the memory usage better.

just as a small heads-up
Reply
Thanks given by:
#70
(07-09-2014, 08:59 PM)Bamboori Wrote:  due to the way game maker studio handles imported files, i may have to make loading screens before each fight/stage etc to prevent memory overloads.
Eeh? You made it sound like a bad thing, but I think that is actually an advantage.
[Image: signature.png]
A-Engine: A new beat em up game engine inspired by LF2. Coming soon

A-Engine Dev Blog - Update #8: Timeout

Reply
Thanks given by:




Users browsing this thread: 1 Guest(s)