Jump to content

  • Log In with Google      Sign In   
  • Create Account

Mekamani

Member Since 15 Feb 2013
Offline Last Active Jul 19 2016 01:46 PM

Posts I've Made

In Topic: Should I leave Unity?

14 July 2016 - 09:46 AM

On random note, are you creating 6 faces on every single cube, even though 1-6 sides of the cube would be hidden because cubes next to it exist? If this is the case then you probably should start optimizing by removing hidden surfaces from being generated.

 

Considering if you have 8x8x8 blocks = 512 blocks and if each block has 6 faces that would be 3072 faces, although the only visible ones from outside would be the ones on the edge which is 8x8x6 = 384.

 

Edit: Quick glance on the code, you can probably reduce a lot of vertices by actually building look up table, so that you do not add same vertices coordinate multiple times, which also saves a bit.


In Topic: UML for UE4 Robust Skill System

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.


In Topic: UML for UE4 Robust Skill System

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.


In Topic: This is probably WAY too big to begin...

26 April 2016 - 07:35 AM

This IS way too big to begin.

You would better start with games like Pong, Tic Tac Toe, Tetris, Snake Game.

 

Also you would better not get started by using Unity for that matter.

Since, you will not understand concepts like implementing the game loop, the texture/resource manager, physics, particle system, etc.

Game engines probably assume that you already know these things and now don't want to waste your time doing these things again and again.

 

For example: If you want to create a third person shooter with Unreal Engine, you can just click that option while creating a new project and you are already supplied with a ready made third person shooter. The player can walk around, jump, etc. already. Isn't this magic? What did you learn? How will it benefit you further? Similarly for Unity, you can just add a third person controller and the magic begins!

 

I don't really understand what is wrong with using stuff that other people made, that is basically how real world works... waste 3 weeks making it yourself, or find something that works and probably works better than coding it yourself although it might cost a buck or two and use that? Like if you use the 3rd person controller and it works then boom. Spending 2-3 weeks to get something like moving cube to work, while fighting against null pointers is more likely going to burn people and prevent them from doing anything.

 

And even if you use ready made scripts, you can try and test how to adjust things to figure out how stuff works. I just cannot really see why someone would rather advice beginner game developer to go use SFML over Unity.


In Topic: how could unlimited speed and ram simplify game code?

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.


PARTNERS