tag:blogger.com,1999:blog-7150748600895135243.post6905625170549978274..comments2024-03-27T08:02:23.246-03:00Comments on Kyrieru: Enemy states and formatingUnknownnoreply@blogger.comBlogger23125tag:blogger.com,1999:blog-7150748600895135243.post-76518415910325887322018-08-27T17:50:14.546-03:002018-08-27T17:50:14.546-03:00what do you use to make sprites? i just use paint ...what do you use to make sprites? i just use paint rn hahaha.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-80640929141033781442018-08-03T19:46:23.604-03:002018-08-03T19:46:23.604-03:00Nice! Makes me excited!Nice! Makes me excited!Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-14445384696374734512018-07-31T22:15:05.936-03:002018-07-31T22:15:05.936-03:00On a harddrive somewhere, I'll probably dig it...On a harddrive somewhere, I'll probably dig it up sometime. Once I finish current projects and go back to some of the unfinished games, I may upload examples of the ones I choose not to finish, and have a page for them.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-54621921075972816022018-07-26T15:15:24.489-03:002018-07-26T15:15:24.489-03:00You will make a 2D hentai game with characters tha...You will make a 2D hentai game with characters that look big and good?, I mean something like Atelier Tia, night of revenge or any of those, I know how easy and simple is to make small characters, pixelated and not look good, but sometimes the easy and simple is not what Better and there's a lot of that, believe meAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-28961454410555402532018-07-24T02:39:51.121-03:002018-07-24T02:39:51.121-03:00Do you still have the demo for Crimson Brave? I mi...Do you still have the demo for Crimson Brave? I missed getting to play it when Megaupload got shut down.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-16924598942177408852018-07-20T17:51:48.701-03:002018-07-20T17:51:48.701-03:00Godot is so not beginner friendly so I don't b...Godot is so not beginner friendly so I don't blame youAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-43433358759332202742018-07-20T11:48:53.971-03:002018-07-20T11:48:53.971-03:00Well, from an outside perspective I don't pers...Well, from an outside perspective I don't personally see much point in moving from one RPG Maker to another. I'm not sure it would be worth the time lost. Personally, I think it'd probably be better to stick with it and focus on streamlining your process, improving gameplay, artwork, etc. <br /><br />To me, RPG Maker and GM are essentially good starting points while being valuable methods of production. But, once you have the programming and development mindset, it's less worth it to invest time into multiple starting points, or in the case of RPG maker, learning new versions. (For example I would never switch from GM to Godot, or from GM to RPG maker)Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-71925020437124413572018-07-20T11:25:46.017-03:002018-07-20T11:25:46.017-03:00I think most people could do it, in my case I just...I think most people could do it, in my case I just happened to start pretty early. I started drawing at a young age, and pixel art, GM, and music were all started at about the same time, early highschool.<br /><br />If you draw on paper, but find pixel art to be slow, I'd get a Wacom, even a cheap one. A tablet is pretty essential for pixel art, speed-wise.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-71997767437648951332018-07-20T07:34:04.945-03:002018-07-20T07:34:04.945-03:00Kudos for being able to do it all yourself. I almo...Kudos for being able to do it all yourself. I almost flunked C++ in college, and pixel art is painstaking slow for me (plus I'm not very good at it). I'm thankful there are programs like RPG Maker, and also for the artists who take commissions. It's certainly expensive, mind you, but saves me a LOT of time. Paladoxhttps://www.blogger.com/profile/07482930607772067800noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-32384417470649218442018-07-20T07:19:04.269-03:002018-07-20T07:19:04.269-03:00I'm currently using RPG Maker VX, and working ...I'm currently using RPG Maker VX, and working with code is always a big hurdle for me. I'm using menu scripts that require dabbling into the code to add more lines, quests, etc.. It's a real pain, but I have to do it. xP<br /><br />For the most part I use events, and they make it very easy to do most things. When I first started out I would make one event for an enemy, and then just copy/paste it. Problem is, if you have an issue in any of the event commands, then you must manually replace ALL of those events that you copy/pasted. Ouch! <br /><br />Later I learned about common events, which you can link to from any normal event. These common events work much better since you'd then only have to edit a single common event, no matter how many of your events call/refer to it. The only reason to replace all the events then would be if you wanted to change the graphic or something, which shouldn't be necessary if you simply replace the graphic that it's using. <br /><br />I feel like I'm constantly learning how to do new stuff, and how to better simplify things that, before, were unnecessarily complex. I'd love to move on to a more advanced RPG Maker someday, but the longer I stay with RPG Maker VX the more comfortable I am with it. I'm seriously thinking about doing so after I finish FSA (The Fairy, The Succubus, and The Aybss). It just seems highly illogical to switch before then. At least if it's a new project then I can do something simpler to learn the ropes, and if I just can't get the hang of it then I can always abandon ship. xPPaladoxhttps://www.blogger.com/profile/07482930607772067800noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-45545727819326197182018-07-19T21:02:48.801-03:002018-07-19T21:02:48.801-03:00[1,4,6,8,9]
Is a sequence of states, which is the...[1,4,6,8,9]<br /><br />Is a sequence of states, which is the only situation I would need to list a combination of states (which are actions). Not sure what you mean by map.<br /><br />Behaviors like "bounce of walls" or "slow to a stop on the ground" could also be an array, where each state has an array of behavior, in addition to the basic movement. That's the closest thing I can think of that I'd describe as a map.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-32520454788988187282018-07-19T17:40:19.374-03:002018-07-19T17:40:19.374-03:00I don't use any game engine but one thing conf...I don't use any game engine but one thing confuses me.<br />Why don't you try to organize them in maps with lists of the states in it?<br />Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-33200777414436033622018-07-18T22:06:11.217-03:002018-07-18T22:06:11.217-03:00There are also people younger than me who are bett...There are also people younger than me who are better at pixel art, better at music, and better at animation. Why do anything then? <br /><br />Because I don't want to just program, or code, or make pixel art; I want to make games.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-53679273414033455212018-07-18T20:21:51.352-03:002018-07-18T20:21:51.352-03:00What I'm going to say is probably really rude ...What I'm going to say is probably really rude but I still think its for the best.<br />I think your time on programming is wasted. Your art is great and programming a 2d game can be already done by underage.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-12678344971921212672018-07-18T11:08:40.845-03:002018-07-18T11:08:40.845-03:00Some states would be general behavior, like explor...Some states would be general behavior, like exploring, chasing the player, etc, and would be a combination of settings.<br /><br />Other states are like "moves", in that they do a very specific individual movement and then return to the behavior state.<br /><br />Sequences in my case are multiple "moves" executed one after the other. Behavior states would generally only be at the end of the sequence so that it can return to normal movement and behavior.<br /><br />Also, things like sprite animation, collisions, etc, would mostly be handled outside of the states. That way I can move an object, and it will animated based on how it's moving automatically. (for example it will use a jump sprite if it's in the air, during behavior states)Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-80921442439679781902018-07-18T11:02:06.834-03:002018-07-18T11:02:06.834-03:00Nah, not much reason to use other stuff. GM doesn&...Nah, not much reason to use other stuff. GM doesn't really limit me in any way at this point. If I were to learn something else, I'd learn Unity or Unreal.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-10823029285939891902018-07-18T10:59:23.067-03:002018-07-18T10:59:23.067-03:00I know it was ugly, that's why I said "yi...I know it was ugly, that's why I said "yikes" afterwards lol. But Yeah, GM can have whitespace. It's possible that I'd write it like that, though if the goal is to make something people can use as a template, I think either form of it is a bit confusing looking. The user would be able to do it either way though, so far as white space goes.<br /><br />Sequences are simply a series of states tied together, so most objects would have their own set of sequences and states, rather than a global list. What would be duplicated would be basic things that are common, however one enemy's "jump back" can be different from another's if need be.<br /><br />As for how GM looks, here's a random BS example. In this example the enemy would walk back and fourth, turning at edges. When they get close to the player, they would attack, and then after the attack they would jump back. Once they hit the ground they would go back to moving. (all the collision code and such happens elsewere, of course)<br /><br />if state =1<br />{<br />if on_solid =0<br />{<br />xscale = -1<br />on_solid = 1<br />}<br />xspeed = 1*xscale<br /><br />if abs(x - player.x) < 32<br />{<br />create = 1<br />state = 2<br />}<br />}<br /><br />if state = 2<br />{<br />if create = 1<br />{<br />create = 0<br />sprite_index = attack<br />image_index = 0<br />}<br />if image_index = image_number<br />state = 3<br />}<br />}<br /><br />if state =3<br />{<br />if create = 1<br />{<br />create = 0<br />yspeed = -1<br />xspeed = -1*xscale<br />}<br />if on_solid = 1<br />state = 1<br />}<br /><br />What I'd be using sequences for is if I wanted the enemy to attack 5 times and then jump back. That way I don't have to program it specifically, I just need to set the sequence to [2,2,2,2,2,3,1].<br /><br />The cutscene thing wouldn't really happen, since a state of "walk left" or "walk to a position" would have defaults. Changing the default value would change all defaults, while using a speed modifier would only change the situation where the state and modifier was used. So if you want to speed up all cutscene movement you could, but if you wanted a specific part to move faster, you could still do that as well.<br />Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-80195809858703885332018-07-18T10:05:41.087-03:002018-07-18T10:05:41.087-03:00The actual control and programming part happens be...The actual control and programming part happens between changing states, states are simply a way of dividing what the object is doing.Kyrieruhttps://www.blogger.com/profile/17876819587515800795noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-41592260843693398452018-07-18T06:09:44.193-03:002018-07-18T06:09:44.193-03:00I use Godot, so pretty much all my states are crea...I use Godot, so pretty much all my states are created in code.<br /><br />Entering and exiting states is split between detecting player input and at key points in the animation clips.<br /><br />An example of how this would work is, the player will hit the attack button sending the game character into the attack state. I use a simple bool to lock out further input while the attack is happening.<br /><br />The Godot animation editor allows you to animate pretty much anything, including the properties like transform, rendering, physics ect. So I usually will enable my raycast or colliders to match up with the players sprite.<br /><br />At the end of the animation clip I put in a key that links to a function that will send the PC back to a rest state (usually idle). If the PC is hit during the animation cycle they are sent to the hurt animation state that has a similar exit function.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-83634674813957383502018-07-18T04:18:45.585-03:002018-07-18T04:18:45.585-03:00My programming knowledge is mostly restricted to f...My programming knowledge is mostly restricted to front end, but I remember reading a fairy recent interview with John Romero where he recommended Corona engine for making 2D games. If you have a moment you might want to check it out.Kondziohttps://www.blogger.com/profile/16242463783745005906noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-71306724571111617252018-07-18T00:53:53.390-03:002018-07-18T00:53:53.390-03:00to clarify, the data chunk wouldn't have the a...to clarify, the data chunk wouldn't have the actual functionality, just a name for the function STATE that you'd call from your actual branch code.Nobuyukihttps://www.blogger.com/profile/14057725319884449476noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-71462880985100510212018-07-18T00:49:05.331-03:002018-07-18T00:49:05.331-03:00Don't know much about GML, but if I had built ...Don't know much about GML, but if I had built a FSM like that, for enemy behavior, I would have each state contain its own arguments in chunks, stored similar to a JSON object, with k-v pairs. Internally, this would be represented by the target language's Dictionary object (can also be called Map, "List" or Associative Array).<br /><br />Each chunk could contain the function it seeks to replicate in the NPC behavior, along with any arguments you'd need to go along with it. Assuming each chunk MUST contain at least one key, (maybe call it "_type" or something), you can branch out from there. You can have an array of these chunks as part of a behavior value, with any "global" values existing higher up in the data hierarchy.<br /><br />If the number of behaviors is expected to be limited (based on the idea that more complex behaviors can be expressed by chaining simpler ones), this shouldn't get too unwieldy to branch out from.Nobuyukihttps://www.blogger.com/profile/14057725319884449476noreply@blogger.comtag:blogger.com,1999:blog-7150748600895135243.post-32669367056126333442018-07-18T00:13:52.222-03:002018-07-18T00:13:52.222-03:00Your concept of "sequences" seems to be ...Your concept of "sequences" seems to be a sort of pseudo-hierarchical state machine implementation, in that a sequence is itself a mini state machine. I'm not gonna nitpick cus I have no idea what your requirements are here, but I will say the stuff you're pointing out as ugly:<br /><br />"<br />sequence[0] = [["jump back",3,1],["shoot",bullet_1_ob,5],"move around"]<br />"<br /><br />looks more to be a problem with whitespace. Something like:<br /><br />"<br />sequence[0] = [<br /> ["jump back",3,1],<br /> ["shoot",bullet_1_ob,5],<br /> "move around"<br />]<br />"<br /><br />is obviously more readable (indentation would be better but it looks like blogspot eats whitespace). Now, if GML doesn't support use of whitespace like that, I guess you're kind of fucked there, in which case I'd try to represent sequences the same way you do states instead. (I'm not sure how that is; I'd assume your individual states are functions or objects but I know nothing about GML, so...)<br /><br />Regardless, you're probably already aware but the technical CS-y term for these things is "finite state machine", with many many variations of the concept. MUGEN characters are purely FSM-driven, and I think they just duplicate states for the most part instead of doing sequences. And honestly, I think you might be better off not coupling things that tightly; do you really wanna have to redo all of your cutscene logic because you decided your character's walk cycle should move her faster?Anonymousnoreply@blogger.com