Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 15 Feb 2013
Offline Last Active Jul 31 2016 03:03 PM

#5289775 UML for UE4 Robust Skill System

Posted by on 02 May 2016 - 02:04 PM

Ok after spending some time looking at the diagram, I think I have grasped most of it. It took some time to find the most centric classes: skillUser and skill, because they were one of the smallest boxes in the pdf.


In simplisity what you have is Skill and SkillUser which to my understanding is essentially something like unit/character. Then when skill is being used it is then being applied to other units/characters that you get from some sort of filtered list, that is determined by the skills characteristics (if skill is aoe or single target, etc.).


Now just some thoughts. How do you apply damage over time? Personally I would add debuffs or skills into the skillUser list that was affected by the skill, and then have some timer on the skillUser that loops through whole list of skills that the skillUser is being affected in certain intervals. For example once every 0.5s if real time, or once every turn change on turn based. Then when the debuff has run out, just remove it from the debuff-list. Although I do not know if this is a good way to do it or not. The dot system also probably needs to take some sort of snap shot from the character stats when the dot was applied to keep the damage same throughout the whole duration.


The debuff list is just bit annoying when you actually have multiple effects on you. If any of the things are additive (power +10, when this effect is on), you have to actually have some sort of back up of your base stats, and recalculate the stats every time you add or remove things. But if everything in your game/system works on multiplying, you can just keep the current value in memory and when effects endy reverse the calculations by just dividing it.

#5289593 UML for UE4 Robust Skill System

Posted by on 01 May 2016 - 11:32 AM

First of, I openly admit that I am not exactly the best coder out there, and I am not even going to say if your diagram is good or bad.


Anyways what I was thinking when I read your post and quickly glanced your classdiagram was, that you haven't given us any information what you are actually trying to do. Basically there is no information of what it is that you are actually trying to do. And at least I do not know what you mean by skill system, the definition could be pretty much anything, but judging from the class diagram it has something to do with spells/player attacks or something?


So first before asking feedback, I think it would make sense to actually write the use of your system. Like for example I want to make a system that when pressing Space, it attacks a selected target (if this would be turn based?) and uses the skills special attributes to damage the target, and the things that are within certain radius of the target. The skill has a movement speed and when it is fired it creates a certain sound and when it hits the target, it creates explosion sound. Every target that are damaged also grunt and the skills special attribute such as freeze is applied to every one of them.


The example is pretty terrible, but my point is, that if you write a scenario or something that shows how the system is used it probably helps more for people to make it easier to give feedback.


Now the second point and I have to admit that I haven't used unreal engine much, so it might have some underlying classes that one must use in order to accomplish something, but.... Lets say that this is the first time you are building the system, I honestly think that you should try keep things as simple as possible. If on the otherhand you have already made one version and you are trying to improve your previous design, then you can just skip the rest. So if this is your first design at least for me, if I try to create a solution to complex thing, I usually overthink things too much. Then I spend way too much time trying to solve everything on the first go, and... waste a tons of time. Regardless how long I spend on trying to think stuffs beforehand, things just rarely go as I plan. After getting things work, I realise that some of the decisions I made before hand were either bad or I didn't think something. So I myself have tried to learn to try to come up as simple solution as possible, even if it doesn't solve everything, and eventually add/modify it until it is good enough. Some things that I have overcomplicated might actually turn a lot easier or simpler and the most important thing is, that I acoid making things more complex than I need to. I should not add features that I am not actually going to use, by trying to generalize everything for all purpose super system.


Anyways the last chapter thoughts came from seeing so many interfaces, that I cannot comprehend how complex of a system the pdf looked like from first glance. Or highly possibly I just do not understand what an interface is.

#5281443 how could unlimited speed and ram simplify game code?

Posted by on 15 March 2016 - 11:55 PM

Not exactly coding related, but I was thinking about polygon count. If there were unlimited speed, one could use sculpting tools to create very high poly objects, and possibly not needing to actually recreate a low poly one. This might save some time in developing games.

#5268074 knowing about military strategies and tactics and

Posted by on 26 December 2015 - 03:34 PM

From my understanding there is a high chance of me being wrong but, in modern warfare they usually use squads of something like 7+ people. There is usually one person that is more in charge of radio messaging. It might not matter a lot for AI development, but there are quite some hand sings as well for squad movement.


I would also think of something like morale with smaller squads, how would it affect performance. Also something like fatigue, how it can make people hallucinate from the lack of sleep. Maybe even discipline, do troops take orders?


Then you could think about military logistics, like how to cut ones supply line and what is the affect of it.


Anyways that is just some random thoughts you might want to consider or just completely drop, because these things do not matter/aren't suited for the game you are making.


Edit: I would probably look for SWAT tactics in the internet, if I were to look something really modern one.

#5266993 Help making an old school RPG

Posted by on 18 December 2015 - 11:39 PM

I think the latest is called RPG Maker VX Ace, but I might be mistaken. It says $70 on Steam, but I've had like three copies of this: One I bought for $25, one someone gifted me, and another that was part of a bundle, so if you wait, you'll likely be able to pick up a copy for cheap. Probably in a Christmas sale in a few days or something.



The latest one is RPG Maker MV

It is bit pricey though compared to the older versions and honestly I haven't tried this one out, but apparently they have done quite some upgrades. There is no more 800x600 resolution limits. Apparently you can also now port to mobile platform and HTML5. The scripting language has been changed to JS from what I think used to be Ruby?


Also I just happened to check BundleStars today, so if you want to get VX Ace for decent price you could pick one up from there. VX Ace seems to be tier 2.



Hopefully this didn't seem like too much of an advert...

#5266113 Unity Vs Unreal

Posted by on 13 December 2015 - 05:09 AM

If you're thinking of going mobile at least before the UE4 created HUGE apk-packets for android. I think they have toned down the size of the packets in the past 8 months tho. I am not anymore sure if they are as bloated as before, but still from my understanding by default unity creates smaller packages.


UE4 has really good tools for analyzing performance, although from my understanding Unity as well has pretty good tools for that.


This is probably due to my lack of skills, but for me it feels, if I am trying to do some really simple things the UE4 somehow doesn't run as well as Unity. Then again UE4 has had quite few major patches since it went free, so there are probably lots of optimization done since then. Like I came to a conclusion that RTS-type of a game, where you have tons of animated low poly objects in a screen seemed to really take a toll on my cpu and on Unity this kind of stuff seemed to run a lot better. But then again this is probably more about lack of skills and understanding of what I am doing, rather than truly the engines fault. Also there have been updates since then, so this might have been something of an issue that could have been fixed since then.


Regardless, I suggest you try out and figure what you truly need for your game, and then try to build something to test out the features you need and then choose the engine you want to go with.

#5263260 Unity or Unreal?

Posted by on 23 November 2015 - 08:35 AM

In all honesty, I think that you are setting yourself up for a failure. But if you still do believe in yourself, you definitely should chop your project into smaller pieces, and work on one piece at a time.


-For example you could create one type of a game, where you can just put trees or structures down on a map, and later on evolve that to a world editor.


-Secondly you could do a small game like pong that works as a 2 player game over a network. Eventually you could learn about how to create a multiplayer game and apply these things into your online game.


Surely these should be split even in smaller tasks, but the idea is that like jigsaw puzzle you start putting it together from edges piece by a piece and maybe create some islands of area then merge some islands together and eventually you'll have your whole picture finished.


Also when it comes to engines, you could just toss the coin to determine if you should use Unity or Unreal, other wise you might end up spending next 1 to 2 years pondering if Unity is better or if Unreal would the best choice. Just choose one and stick with it. Although I do personally think that Unity is more suited for low poly things, since Unreal doesn't seem to be optimized into low polygon things.

#5262856 Can't learn c++

Posted by on 20 November 2015 - 07:32 AM

14 is definitely a good age to start programming, since you have decades of time to learn to program, and it really does take time. Just remember to start from small so that you actually can get the feeling of achieving something, instead of trying to aim for the skies. I can almost guarantee that you will have hard times on your way, but try not to give up when things do not go too well. And most importantly, everything you try to learn takes time. Even the greatest people at drawing spend years to decades to whole life to learn how to draw.

#5253600 Why 2D?

Posted by on 23 September 2015 - 01:13 AM

I think the 2d vs 3d is same as when people say that you should start with simpler games, not with the new MMORPG. It takes a lot of time, and if you start your game programming with something that fails 99.99% of the times, although making 3d instead of 2d probably will not be that much more failing, you might end up losing interest with your hobby before you get anything finished to begin with.


Also having to learn how to do 3d models also requires you to learn an extra skill takes again more time. I think the 2D vs 3D question can mostly be translated into, how much time you are willing to spend on your first game? 1 month? 6 months? 2 years? Can you honestly say that you still have motivation to keep going with your project after spending 500 hours on a project for half a year (roughly 4 hours a day)?


So adding more complexity always adds more time needed for the project, and the longer your project goes, the more likely it is to fail and thus people recommend 2D over 3D.

#5250968 Need to be taught to make a 3D MMORPG

Posted by on 07 September 2015 - 06:05 AM

I guess most people have given their feedback, but just to give you an idea about rpgs, in burgzergs youtube page there are about 300 video tutorialish on making rpg, and this is without the online thing. Basically that is good 50+ hours of tutorials. It is using old unity, but at least concepts should work on new unity. Even tho the lenght of the videos are only 50ish hours, I assume the planning of what he is doing and the time he has spent on errors and figuring out what to do outside the video time took far more than 50 hours.


Also remember that if everything looks easy by watching the video, it is A LOT harder if you actually have to make the code by yourself, which will be the case in making your own online rpg. I wouldn't honestly be surprised that for someone who doesn't know programming to begin with it could easily take 1 year if you spent 8 hours a day to get to the point where these videos stops at.



#5249934 Turn Based Game AI processing display

Posted by on 31 August 2015 - 10:33 AM

My solution might not be the best one, but basically it is something like what DishSoap presented. With addition of using tweens to create a visualization for the actions that are going to happen.


For example on my game that I am making the solution is somewhat like

1) Pick next unit for moving.

2) Calculate the move the AI wants to make

3) Create tween that shows the ai-movement in screen.

4) Add the action the AI does such as attack after the tween

5) Use tween to animate the attack animation

6) Start tween

7) Play tween until its done.

8) Move to 1)


Basically while tween is playing, remove the controls from the player or possibility of changing turns. Now depending the logic of your game, if the AI can move any given piece on the board and the turn ends after AI has moved every single piece, picking the correct unit to move might cause some trouble or trying to evaluate how good a move truly is.


But yes I would probably look for Tweens as a solution for representing the movement. Most likely most of the game engines out there have some sort of solution for tweens.

#5248067 RPG, Engines and Frustration

Posted by on 21 August 2015 - 10:20 AM

I keep wondering if this is trolling or not.


Anyways if you've already made a Pong clone, then you should have most of the knowledge needed to make any other game. Just change the balls sprite to fireball and make other paddle shoot them and try to dodge those. Then you have a boss that shoots fireballs. Give your other paddle something that triggers from pressing fire button, and you have a sword swing. Then check its collision to the boss. Swap the paddles sprites to whatever boss and hero character.


I think the first thing you should do is to start modifying your pong, try to figure out what each line of code does.


As for engine pick anything you feel comfortable. If you only wanna make rpg games, then rpg maker is probably the fastest way. There is Love2D, which is something I like to use, but it requires you to understand at least the basics of what is a game. Also a lot of people keep suggesting GameMaker for 2D, I haven't tried it myself. Also you could use Unity5 and if you're going for 3d later, you might be able to save some time. Also there are engines like LibGDX, Cocos2D-x, pygame, panda3d. Most likely picking any of them will not be wrong.


The bottom line is, that instead of worrying if x is better than y, just make something. If you are afraid of making a mistake, or going a detour then most likely programming in general might not be your thing. Also something that works for one person might not work for another, so I don't think there is any kind of golden road how to accomplish your goal.


Also I don't think you mentioned about the platform you want to develop to. If you're looking for mobile devices, some engines might be better than others. If you're purely looking at windows desktop, you do have more choices. If you are planning on making multiplatform game as your first game, you probably should at least focus only on one platform, and later on the others.


As for you don't jump off the road and start walking randomly... I think that is exactly what you should do. Fiddle around the game code you've made, play with it until you have gained understanding what it does.


Also something that might help you later on in a project is writing down some kind of todo-list. Like learn what is game loop, learn how to read inputs, learn how to draw images on screen. Learn how to make character move by inputs, learn how to make characters that move on their own. Learn about collisions, and so on. Break down your thing into smaller pieces and take one of em at a time, and eventually you'll have your game.

#5227857 Best engine/language for a ~2d golden sun/pokemon type game?

Posted by on 07 May 2015 - 05:17 PM

If you consider portability for future, as in maybe one day wanting to code your game to mobile phones as well, Cocos2d-x might be a good choice as well, although SDL does support quite variety of systems. I think Cocos is a bit higher level than SDL, as I think that Cocos2d-x is a game engine, where as I consider SDL more of a framework. Also it has some tools for UI + rather big community. It does have it's own learning curve though. 

#5225713 Why Does Everyone Tell Newbies To Make Games?

Posted by on 26 April 2015 - 03:21 PM

I guess this is kinda same as I always try to convince people not to use C++ as their programming language when they are just starting with programming. I really think giving good tools would be something that can make it or break it when someone tries to take their first steps on programming. It is quite some time when I tried to use XNA, and I noticed its definitely not the easiest one to start with. Before learning how to use the engine, you'll first have to learn to code C# and stuff about classes and inheritance.


If I were to recommend something I would probably suggest trying out love2d. Even tho there are a lot of questionably named libraries for it, I think using LUA would be easier to get started with. Not to mention you can draw stuff on screen in less than 10 minutes by writing 10 or something lines of code.


It might not be the most fastest nor optimized, but it should be good enough for almost any kind of 2d game people would make.


As for making pong or tetris, making even that one game will be more than what most people will be able to ever do. Even better if your final goal has similar elements as the first game you are trying to make, or maybe make small games that have the elements that you are planning to have in your dream game. Then eventually building the game piece by piece in small steps. You probably won't win olympic gold in 100 meter sprint if you haven't yet learned how to even walk.

#5213754 Architecture vs Performance [Android game]

Posted by on 01 March 2015 - 05:35 PM

I would probably test out how much you can even output tiles per frame. From what I've tried before using sprite batches on libgdx for example, on my android (Nexus5) I can spam around 10k tiles per frame. So basically as long as you try to avoid changing textures in middle of drawing you should be all good.


If you really are worried about the speed of your solution, you might want to make sure that you try to avoid cache misses, in other words from quick glance swap the for loops around, so that it loops y, and x inside y. So for(y ... ) { for( x ... } }, when you are using tiles[ x + y * tilesX ]. I am not even sure how much difference it would make.