If you want entities to rebound off walls in a predictable way, is it better to code that specifically or would you want to use physics in that case?
Ehhhhhhhhhhhhh... Again I would say code it specifically if you want it to be predictable, but it might not be realistic. The question then would maybe be "how predictable". Like if someone slams into the wall at a million miles an hour, should it rebound the same amount as if it lightly brushed it? Should it predictably bounce at exactly half the speed it hit the wall at or something? Is the speed that it would hit the wall even a variable thing, or would it always be in at the same speed and out at the same speed?
My general rule of thumb is if you want something to behave realistically, use physics, if you want consistency and predictability, code it.
+1
Options
MorninglordI'm tired of being Batman,so today I'll be Owl.Registered Userregular
edited November 2015
Well, the knockback speeds are all going to be precisely controlled. So I'll know its speed when it hits the wall. I don't know if I'll make it variable or not, but if I do, it'll be a controlled variation.
Basically I just want people to be able to bounce enemies off walls to juggle them. In most games they just hit the wall and fall down.
Morninglord on
(PSN: Morninglord) (Steam: Morninglord) (WiiU: Morninglord22) I like to record and toss up a lot of random gaming videos here.
it's a weird little mobile game where you're an int and you try to make it larger by picking up stuff that would, you know, do that. and not picking up stuff that would subtract from you. you die and start again if you spend 5 seconds as a negative number
We did something like this for Isaac Fruiton. Based on the town name you put in it randomly generates a town out of a bunch of levels w/ baked lighting etc.
Basically I'm trying to build a 2D, 3D semi-enabled platformer that's a little bit Sonic and a little bit Metroid, with enemies and obstacles that predominantly apply knockback on contact. I realize that Sonic games use a lot of "cheats" instead of just using physics, but I'm not going nearly as far as that, so hopefully physics and a lot of edge detection can do it. I do in fact use FixedUpdate and Forces. I think my knockback scenario is similar to Morninglord's; no friendly fire, but possible use of enemies to trigger environmental effects.
The thing I'm finding is that the objects aren't even going that fast, visually, usually less than 100f... but even with continuous detection on both the acting object and the collided-with object, there's still phasing going on with just basic interactions. It makes me worry what will happen when the player is facing multiple enemies using knockback at the same time in similar directions...
--
Update: Cutting the TimeStep down to .01, in Conjunction with Continuous collision seems to have worked for now. I'll have to do a few more experiments to see what this does, but it's a step in the right direction. Thanks again!
We did something like this for Isaac Fruiton. Based on the town name you put in it randomly generates a town out of a bunch of levels w/ baked lighting etc.
Nice! Yeah, that's kinda the idea
I added overlap prevention last night and told it to generate a 200 chunk level. That's 200 sublevel instances loaded:
Next on my to-do list are door/transition management (multiple door anchor types, and adding actual door meshes), and using my spline mesh system to dynamically connect some open door anchors. Right now the system creates just a linear branching tree without interconnections...
Hmm... When I've got this all worked out, I wonder if I should polish it up for the marketplace. Over 9000 Dungeons, anyone?
Unreal 4.10.0 is out today. None of the changes or improvements are particularly interesting to me, but I upgraded to see if they fixed the bug with decals and orthographic cameras.
They did not, which is fine, I only posted the bug about a week back or so. What's less fine is that upgrading my project from 4.9 to 4.10 necessitated the installation of VS2015, which ended up taking around 2 hours.
Some work done tonight: Updated to 4.10, made level generation seeded, so that I can more easily debug things, and: doors! Capped all the open anchors that would have let you fly outside of the level, and added a configurably random amount of doors in between chunks.
Wheee!
Edit: Oh right, I also made all non-door lights static and accelerated the whole level chunk loading process by digging deeper into code. It's got its claws in me...
Unreal 4.10.0 is out today. None of the changes or improvements are particularly interesting to me, but I upgraded to see if they fixed the bug with decals and orthographic cameras.
They did not, which is fine, I only posted the bug about a week back or so. What's less fine is that upgrading my project from 4.9 to 4.10 necessitated the installation of VS2015, which ended up taking around 2 hours.
Yeah uninstalling VS2013 is what took the longest for me before upgrading to 2015. It's ok though as I can't work too hard as let my hand heal after getting hit with an axe.
Unreal 4.10.0 is out today. None of the changes or improvements are particularly interesting to me, but I upgraded to see if they fixed the bug with decals and orthographic cameras.
They did not, which is fine, I only posted the bug about a week back or so. What's less fine is that upgrading my project from 4.9 to 4.10 necessitated the installation of VS2015, which ended up taking around 2 hours.
Yeah uninstalling VS2013 is what took the longest for me before upgrading to 2015. It's ok though as I can't work too hard as let my hand heal after getting hit with an axe.
Ow... how did you get your... Hand... kord... under an axe?
I was chopping wood that is a bit too green and working through a large knot when the axe stayed in the crack it just created. It was not stuck and pulled out too easily but I was not ready to hold back its weight so it fell 3" onto my left hand slicing through my leather glove as if it wasn't there and stopping 1/3" into my index finger's flesh. After 13 hours waiting at the emergency room they glued my finger back together.
I was chopping wood that is a bit too green and working through a large knot when the axe stayed in the crack it just created. It was not stuck and pulled out too easily but I was not ready to hold back its weight so it fell 3" onto my left hand slicing through my leather glove as if it wasn't there and stopping 1/3" into my index finger's flesh. After 13 hours waiting at the emergency room they glued my finger back together.
I was chopping wood that is a bit too green and working through a large knot when the axe stayed in the crack it just created. It was not stuck and pulled out too easily but I was not ready to hold back its weight so it fell 3" onto my left hand slicing through my leather glove as if it wasn't there and stopping 1/3" into my index finger's flesh. After 13 hours waiting at the emergency room they glued my finger back together.
btw your level generator is looking great.
jesus
sorry to hear that mate
(PSN: Morninglord) (Steam: Morninglord) (WiiU: Morninglord22) I like to record and toss up a lot of random gaming videos here.
Don't worry guys, it's not that bad. No tendons, ligaments or bone were harmed. I already have full use, I just have to let it heal properly. I'll probably try to continue cutting wood tomorrow, although I'll limit myself to sledge and wedge on the 250lbs pieces.
I am also in the process of making a fusion reactor simulation. You'll have to get every system from electrical to cooling going for ignition and then work on balancing the reactor to achieve main sequence or self sustaining equilibrium.
Right now I have a supply equipment base class that control the flow of resources to other connected devices. I can now connect all the labs lights to a switch hooked up to a generator and switch them on and off. I can also exceed the generator output and have everything dim as not enough power can be supplied. I am going to be applying this same principal to cooling, cryogenic, vacuum, etc... subsystems.
This is getting all set up to be controlled by instrument panels with dials and meters giving you subsystem feedback. Should be fun to make.
For procjam I wrote a maze generator based on Penrose Tiles. Works pretty well but I don't think I'll have time to add interaction (i.e. have a dude move around the maze).
SQAdd is a command that allows me to enter things on the console in this game mode. I've mentioned it before - things like moving the camera, moving units around, etc. Previously I've maintained a TArray<FString>, and the function for SQAdd just added items to that array. Then, in TacticsGameMode (a blueprint class which derives from ConsoleGameMode) I had an OnTick event that checked the array (accessible via parent variables and handled them. It works, but it's less than optimal. I'd like to only use OnTick for things that happen on tick. So I added this:
ConsoleGameMode.h
UFUNCTION(BlueprintImplementableEvent, meta = (DisplayName = "ExecuteAdd"))
void ExecuteAdd(FString& Command);
I did a clean build of 4.10 with VS2015 and I got an "internal compiler error" :bigfrown:
Then I built it again and luckily it built fine. If it failed again I would probably have re-wound to 4.9.
I did a clean build of 4.10 with VS2015 and I got an "internal compiler error" :bigfrown:
Then I built it again and luckily it built fine. If it failed again I would probably have re-wound to 4.9.
I fixed it by nuking everything except the .git and then checking out a fresh copy
Oh a hint for the UE people: if you want to write source that can move easily between multiple projects, the precompiled header thing is only enforced for .cpp files, you can use .cc to write files that will compile for multiple projects. And yes you can define UCLASSes in these files too
I did a clean build of 4.10 with VS2015 and I got an "internal compiler error" :bigfrown:
Then I built it again and luckily it built fine. If it failed again I would probably have re-wound to 4.9.
I fixed it by nuking everything except the .git and then checking out a fresh copy
I was working on lighting my game and having issues with light intensity and attenuation until I read the ue4 docs on lighting and saw IES profiles. I wish I had used these sooner, they work so well.
I haven't dealt with them much, but the one time I did it seemed like there were issues with dynamically setting brightness of a light? Maybe that's outside of what they're supposed to be useful for
Yes if you check "Use IES Profile Intensity" you can no longer change the brightness. I need to be able to flicker my lights so I just copied the intensity value from the profile into the intensity box and left use intensity unchecked. Seems to work fine.
Posts
Ehhhhhhhhhhhhh... Again I would say code it specifically if you want it to be predictable, but it might not be realistic. The question then would maybe be "how predictable". Like if someone slams into the wall at a million miles an hour, should it rebound the same amount as if it lightly brushed it? Should it predictably bounce at exactly half the speed it hit the wall at or something? Is the speed that it would hit the wall even a variable thing, or would it always be in at the same speed and out at the same speed?
My general rule of thumb is if you want something to behave realistically, use physics, if you want consistency and predictability, code it.
Basically I just want people to be able to bounce enemies off walls to juggle them. In most games they just hit the wall and fall down.
it's a weird little mobile game where you're an int and you try to make it larger by picking up stuff that would, you know, do that. and not picking up stuff that would subtract from you. you die and start again if you spend 5 seconds as a negative number
https://www.youtube.com/watch?v=D43qCzY2jGU
Unreal Engine 4 Developers Community.
I'm working on a cute little video game! Here's a link for you.
We did something like this for Isaac Fruiton. Based on the town name you put in it randomly generates a town out of a bunch of levels w/ baked lighting etc.
Basically I'm trying to build a 2D, 3D semi-enabled platformer that's a little bit Sonic and a little bit Metroid, with enemies and obstacles that predominantly apply knockback on contact. I realize that Sonic games use a lot of "cheats" instead of just using physics, but I'm not going nearly as far as that, so hopefully physics and a lot of edge detection can do it. I do in fact use FixedUpdate and Forces. I think my knockback scenario is similar to Morninglord's; no friendly fire, but possible use of enemies to trigger environmental effects.
The thing I'm finding is that the objects aren't even going that fast, visually, usually less than 100f... but even with continuous detection on both the acting object and the collided-with object, there's still phasing going on with just basic interactions. It makes me worry what will happen when the player is facing multiple enemies using knockback at the same time in similar directions...
--
Update: Cutting the TimeStep down to .01, in Conjunction with Continuous collision seems to have worked for now. I'll have to do a few more experiments to see what this does, but it's a step in the right direction. Thanks again!
Nice! Yeah, that's kinda the idea
I added overlap prevention last night and told it to generate a 200 chunk level. That's 200 sublevel instances loaded:
Next on my to-do list are door/transition management (multiple door anchor types, and adding actual door meshes), and using my spline mesh system to dynamically connect some open door anchors. Right now the system creates just a linear branching tree without interconnections...
Hmm... When I've got this all worked out, I wonder if I should polish it up for the marketplace. Over 9000 Dungeons, anyone?
Unreal Engine 4 Developers Community.
I'm working on a cute little video game! Here's a link for you.
They did not, which is fine, I only posted the bug about a week back or so. What's less fine is that upgrading my project from 4.9 to 4.10 necessitated the installation of VS2015, which ended up taking around 2 hours.
Wheee!
Edit: Oh right, I also made all non-door lights static and accelerated the whole level chunk loading process by digging deeper into code. It's got its claws in me...
Unreal Engine 4 Developers Community.
I'm working on a cute little video game! Here's a link for you.
is this a descent style game
excuse me i need a tissue
Yeah uninstalling VS2013 is what took the longest for me before upgrading to 2015. It's ok though as I can't work too hard as let my hand heal after getting hit with an axe.
Yup.
*hands Morninglord a tissue*
Ow... how did you get your... Hand... kord... under an axe?
Unreal Engine 4 Developers Community.
I'm working on a cute little video game! Here's a link for you.
btw your level generator is looking great.
Ouch. Glad to hear you're still in one piece!
Unreal Engine 4 Developers Community.
I'm working on a cute little video game! Here's a link for you.
jesus
sorry to hear that mate
I hope your healing gives you full use.
I am also in the process of making a fusion reactor simulation. You'll have to get every system from electrical to cooling going for ignition and then work on balancing the reactor to achieve main sequence or self sustaining equilibrium.
Right now I have a supply equipment base class that control the flow of resources to other connected devices. I can now connect all the labs lights to a switch hooked up to a generator and switch them on and off. I can also exceed the generator output and have everything dim as not enough power can be supplied. I am going to be applying this same principal to cooling, cryogenic, vacuum, etc... subsystems.
This is getting all set up to be controlled by instrument panels with dials and meters giving you subsystem feedback. Should be fun to make.
That's a relief.
ConsoleGameMode.h:
ConsoleGameMode.cpp
SQAdd is a command that allows me to enter things on the console in this game mode. I've mentioned it before - things like moving the camera, moving units around, etc. Previously I've maintained a TArray<FString>, and the function for SQAdd just added items to that array. Then, in TacticsGameMode (a blueprint class which derives from ConsoleGameMode) I had an OnTick event that checked the array (accessible via parent variables and handled them. It works, but it's less than optimal. I'd like to only use OnTick for things that happen on tick. So I added this:
ConsoleGameMode.h
And replaced AConsoleGameMode::SQAdd with this:
ConsoleGameMode.cpp
This all compiles, but ExecuteAdd doesn't show up in the list of actions on my event graph for TacticsGameMode. Any ideas?
Turns out I set up the timer reset and all the timer behaviour....
...and never had it set to count down at any point.
I did a clean build of 4.10 with VS2015 and I got an "internal compiler error" :bigfrown:
Then I built it again and luckily it built fine. If it failed again I would probably have re-wound to 4.9.
I fixed it by nuking everything except the .git and then checking out a fresh copy
Relevant
https://github.com/ajalt/fuckitpy
sometimes you don't wanna deal with any god damn exceptions
Haven't started designing the inside of this manor yet, but I have got 3 different ways in other than the front door
Example of how I’m doing my base level geo for my UE4 game (project thiefygame) in Hammer/Worldcraft
Also, not strictly game dev but I did a video about Oni modding
https://www.youtube.com/watch?v=_LRyxtXkPng