Amateur Gamedev General ~ /agdg/ /vm/

"NoDev makes the thread" Edition

>Resources:
irc.rizon.net @ #8/agdg/
>>>/agdg/
>>>/vm/

Other urls found in this thread:

en.wikipedia.org/wiki/Absolute_value
love2d.org/wiki/Tutorial:Platformer_Jumping
3dgep.com/understanding-quaternions/
mollyrocket.com/837
en.wikipedia.org/wiki/Quaternion#Hamilton_product
archive.is/jDhsk
youtube.com/watch?v=zE_-AHFEgEY&list=PLda3VoSoc_TR7X7wfblBGiRz-bvhKpGkS&index=29
youtube.com/watch?v=Xa5IzHhAdi4&feature=youtu.be&t=27m22s
docs.unrealengine.com/latest/INT/API/Runtime/Engine/Kismet/UKismetSystemLibrary/IsServer/index.html
cedric.bnslv.de/Downloads/UE4_Network_Compendium_by_Cedric_eXi_Neukirchen.pdf
docs.unrealengine.com/latest/INT/BlueprintAPI/Math/Vector/MirrorVectorbyNormal/index.html
blog.forrestthewoods.com/solving-ballistic-trajectories-b0165523348c
a.pomf.cat/afycdc.7z
8ch.net/u/res/1250.html#q6359
love2d.org/wiki/Tutorial:Physics
8ch.net/v/res/9720894.html
learn-cocos2d.com/2013/08/physics-engine-platformer-terrible-idea/
youtube.com/user/999Greyfox
youtube.com/user/uheartbeast
youtube.com/user/RealTutsGML
accu.org/index.php/journals/c362/
lexaloffle.com/pico-8.php
twitter.com/AnonBabble

Is it over already? I mean, the old one.

currently delving into C++ and SFML instead of working on my gaymaker harvest moon clone.
if anyone has tutorials that helped them it would be greatly appreciated
CodingMadeEasy videos need not exist. holy fuck that guys autistic

Finished my dialogue tree class a couple days ago and started working again on the Bearman base graphic. Won't be doing much work past the rig for it yet since I want to add an inventory system and lock-on targeting first.

Just finished my first animation ever.
Im amped

It kinda looks like a late-era PS2 game.

What is it?

...

Is not like you would want to, better to show it at a real fans convention or something.

>tfw a game you worked on will make it to this year's Tokyo Game Show
Just a few more months and I'm free to do my own project, you'll hear plenty about that.

What's the easiest algorithm to get the x, y, width, and height of the area of collision (in global space) between 2 objects?

Either my brain isn't working or then there isn't as simple of a solution as I'd like.

retarded solution for width:
X coordinate of B + width of A - x coordinate of A

no, wait, it should be width of B - X coordinate of A

That doesn't seem right. It would become negative. It also has to work even if B is colliding from the opposite side of A. I'd like to avoid if/else conditions if possible.

I figured x and y should be easy, just do "max(a.x, b.x)".

Is it a licensed project, or console exclusive?

Seems pretty cool if you're OMA dev and you're already doing contracts and making this a living.

x = abs(x1 - x2)
y = abs(y1 - y2)

What software is that you are using?

How difficult to use if you don't know any coding language?

Not OMA, small team. Else I wouldn't be NDA'd out the ass regarding the project itself, just the hardware I would develop it on. We have contact with a few publishers, but we aren't licensed yet. Reactions at the TGS will probably decide if they start making actual offers or just stop answering emails, for now we're just doing our best making the game as good as we can.


You need to actually label some points before you can give such a generalized solution, and your solution probably only works when B is to the bottom right of A.


Are the boxes always axis-aligned? Do you already have some form of collision in place?

Yes and yes. I can detect the collision, but I just need to get the bounds of that collision. Imagine I want to place something into the map within the collision area, the objects are irrelevant, only the area of intersection matters.

x and y seem easy enough, but the width and height are still a problem.

ok, you subtract the dimensions of the first object from those of the second one, and use their absolute values

en.wikipedia.org/wiki/Absolute_value

Yeah, that's the graphical quality I'm shooting for. While I can make modern hi poly sculpted/baked stuff it's just too much work when I'm doing it all.


I'm working in Godot, which uses a slightly modified version of python for scripting. Python is a pretty high level language which makes it easy to learn.

Trust me when I say writing in a real language becomes MUCH easier than drag and drop "no-coding" systems when you start making anything remotely complex.

//rect has x, y, width, and heightRect A(10,10,8,8), B(15,12,5,3);//manual calculation tells us the colliding volume is 3*3=9//subtract the dimensions of the first object from those of the second one, and use their absolute valuetest_x = abs(A.w - B.w) = abs(8 - 5) = 3test_y = abs(A.h - B.h) = abs(8 - 3) = 5//test_x * test_y = 15, thus wrong

What you are calculating is the difference in volume between the two boxes, not the volume of their overlap.

Alright, Godot or Touque3D?

I am using GZdoom right now to work on my project, and the decorate coding system in it is great; its a shame they is no coding language as simple as that.

Torque is probably a better choice as its much more developed than Godot. But if you are sticking to 2D Godot is fine.

Got it://rect has x, y, width, and heightRect A(10,10,8,8), B(15,12,5,3);//manual calculation tells us the colliding volume is 3*3=9Point C1(Max(A.x, B.x), Max(A.y, B.y)); //result is (15, 12)Point C2(Min(A.x + A.w, B.x + B.w), Min(A.y + A.h, B.y + B.h)); //result is (18, 15)int CWidth = C2.x - C1.x, CHeight = C2.y - C1.y; //both are 3 Pretty sure this is correct for all axis aligned cases.

I should also note that this doesn't work with negative width and height values for A and B. You would need some if/else checks if you ever use those, but I don't think there's a good reason to do so, ever.

Either I did something wrong or that doesn't seem to work.

Looks to me like you accidentally used Max for the X value of C2.

Yeah I noticed that the height is calculated correctly.

I somehow managed to mix a and b at the first half of C2. It works now, thanks dude.

So let me get this right:
I have a normal walking cycle and a pose for 1 arm of the skeleton, and I wish to combine the two (basically hands to the sides normally and right arm holding a club when the club is there).

Is the way to go in UE4 to create a montage with the arm animation, then play said montage at 0 playrate? That's basically what the documentation tells me but it feels quite makeshift, what with having to stop/start montages all the time for pose changes. Isn't there a more natural way to layer animation/poses in the anim graph?

What's a lightweight modeling program in which I can make lowpoly from basic shapes and slap a texture on it? Milkshape?

blender?

Oh, I thought it was over 800 mb for some reason
That's a pretty small filesize

use an 'animation composite' with both anims, or a montage with an instance of your state machine which only controls top half of skeleton

theres tuts on yotube for blending anims

Tried out a tutorial on platformer jumping in love today, the jumps actually seem… sluggish.
Like, when the player jumps, the jump starts slow and builds upward momentum until it reaches max jump height.

Give them maximum jump velocity as soon as they push the button, then have them decelerate as time goes on, up to their maximum fall speed. As long as the button is held, they retain maximum velocity until the peak is reached (eg 1 second), and at that point (or when the button is released) velocity becomes 0 and starts falling.

currently the velocity starts at 0, then when jumping it calculates the new velocity to be:
player.y_velocity = player.y_velocity + jump_height * (dt / player.jumptime_max)

where dt is delta time for each update, and jumptime_max is the limit to the player's jump when holding the jump key ( to emulate the small and high jumps of most platformers)
I'll just link the tutorial rather than copy/paste the entirety of the code to show how it's being done.
love2d.org/wiki/Tutorial:Platformer_Jumping

For more realistic movement, just use
At the exact moment the jump key is pressed. You push yourself upward with an impulse when jumping, gravity does the rest making a nice parabola.
For hold-jump-to-go-higher functionality, do both what I just said and what the tutorial says, but cut jump_height in half. Or use a different ratio for each, 0.3 * jumpheight for the impulse and 0.7 * jumpheight for the "jetpack," then play around with it until it feels right for what you want.

Aww shiet, I found my pace. And my uncle is looking good too. A bit of digging showed that the lady accusing him of rape is full of shit and her case hasn't a leg to stand on. We got 3 witnesses who all confirmed her story was bullshit. We expect she'll drop the charges before she risks making a fool of herself in court.

Anyways. Here's a Colt Mk. IV (basically an M1911) rendered in just short of 500 polys. As usual I look for criticism when I make these so any would be appreciated.

I took a look at a mario clone someone did, and they set the jump height based on player speed:
local impulseself.xVel, self.yVel = self.body:getLinearVelocity()if math.abs(self.xVel) > 600 then impulse = 125else impulse = 105endif self.jumpWall == nil then --regular jump if self.canJump then self.body:applyImpulse(0, -impulse) self.canJump = false endelse...end

You know, modelers measure their models with triangles instead of quads because graphics cards can only render triangles. Those quads will be split into triangles and rendered as triangles when you get them into a game, so you might as well be counting triangles.

...

No, they measure their model with final verts (after splits) because that's what the T&L is applied to.

I mostly use C++ anyway with Godot, but it still makes me feel gross when I have to do shit in gdscript.

Made an alien enemy that drags itself slowly to you, then hits you with high damage.

The damage is made up by his speed

I'm trying to figure out how to move the player with WASD, relative to the camera's quaternion. I'm sure there exists a million scripts out there to do this but I was really hoping to understand this basic math.


tldr; how the fuck do quaternions work? How did some hairy desert dwelling shithead figure this out?

Tell me it's a WIP

We need more bears in vidya

Doin' god's work, user.

It is. Like I said its my first animation.

Im just trying to git gud

Oops.

That's kind of a weird weapon.

Trying to make faction concept art for my vidya. Life is suffering as an artfag.
All draws and can't code for shit.

Wanna make 2D sprites or 3D?

2D since I plan on using GameMaker.
I cannot into unity or unreal.

What about Godot? in any case you could try to first make sprite components.

These are pretty neat, user.

Started fucking around with tileset ideas.

The water looks like grass/forest at a distance. I'm digging the desert/post-apocalyptic thing you've got going on with the ruined buildings, though. Nice work.

Would you buy a used car from this mushroom?

Pretty sure the guy who figured them out did so while walking over a small bridge in England.
As for how to understand them, this might help: 3dgep.com/understanding-quaternions/ and it explains how they were discovered
4-dimensional matrices combined with imaginary numbers results in most people just giving up on understanding them and just learning how to use them.

Yeah the water definitely needs work. Probably too much texture compared to the land right now.


Depends, is he a fun guy?

So should I learn Python first before using Godot?
I was looking at the Godot's language documentation but without understanding anything about programming it's not that helpful.

I like the art, but that animation doesn't look great. The fluid motion looks too flash-like, and the spear should move with the hand. The spear shifting independently of the hand that's holding it without some visible finger movement makes it look incredibly unnatural.

There's a fucking program that lets you make and generate them on the fly and even exports it as a GML file with all the parameters.

Why didn't any of you niggers tell me about Particle Designer 3?

For 3D rotations? Doesn't matter unless you need to write the math library yourself.
You can treat quaternions as a normalized, weighted blend between four different rotations, XYZ being 180 degrees around their respective axes, and W being the identity/null rotation. Therefore, the identity quaternion's components are [0,0,0,1].

Note that [0,0,0,-1] means the object has been rotated 360 degrees around any axis and is in the same position as the starting one. Quaternions differentiate between 0 and 360 degrees, wrapping around at 720 instead. This property of quaternions is called double-cover and in some cases it can be a pain in the ass (when you're trying to spin something), while in others it's a blessing (when you're blending bone rotations and you don't want a bone to return to its position the wrong way around).

In the end, the real reason we're all using these is because they can be safely lerped/slerped and blended from any position to any other without freaking out, unlike euler angles.

There's a nice video around somewhere that I learned all this from. Not sure but I think it was this one. mollyrocket.com/837

Any good ideas to focus and stop procrastinating? I've been doing nothing for two hours now and I fucking hate myself.

You're probably better off grabbing a library but sure whatever.


In order to understand quaternion rotation, you must first understand rotations through complex numbers.

Complex numbers are numbers that have an imaginary component. For example, 5+3i is a complex number, in which "5" is a real component, and "3" is the imaginary component. The "i" is a constant equal to √-1.
If you put down some complex numbers on a graph (where the horizontal axis is real component, and vertical axis is the imaginary component), then you can rotate complex numbers around the 0+0i point by multiplying by i or -i. How does that work? Take any imaginary number (e.g. 5+3i), multiply it by i (=5i+3i²) and then simplify any cases of i² into -1. (=5i+3, or 3+5i) Every time you multiply by i, you turn the number 90 degrees counter clockwise. Naturally, doing this four times will turn you a full circle. (i² * i² = -1 * -1 = 1)

If you want to turn less than 90 degrees, you multiply by (cos(α) + sin(α)*i) instead. By doing this, you essentially perform two rotations and merge the result. You rotate a part of your number into itself (*cos(α)), and you rotate a part of your number into the imaginary plane (*sin(α)*i).

Quaternions rely on the same principle, but instead of rotating it by multiplying it with a real number and an imaginary number, you multiply it with a real and 3 separate imaginary numbers, i, j and k.

A quaternion that rotates α degrees around axis xyz looks as follows: cos(α/2) + sin(α/2)*(x*i + y*j + z*k). (xyz is normalized)
Note how the form is similar: You multiply by a real component (cos(α/2)) and three separate imaginary components.
One noticable difference is that instead of a multiplication by an imaginary number translating to a 90 degree turn, this time it translates to a 180 degree turn. This is why the angles are divided by two. Although this may be confusing, you should look at it in the perspective of "how much do you turn around each axis?". If you rotate a total of 180 degrees around the x axis, then it is only to be expected that there is zero left of the real component (cos(180/2) = 0), and the rotation is completely done around the imaginary component of the x axis (sin(180/2)*x*i = x*i).
To perform the actual rotation, you convert your vector into a quaternion. (Rotating 3D vector xyz translates to quaternion 0+xi+yj+zk. Note that there's no real component.) After that, you multiply, simplify it, and then convert it back into a 3D vector. (Where the i,j,k components translate to x,y,z.)
The actual difficult part here is multiplication, because just like multiplying by i, multiplying by i,j and k has special rules! In this case, i² = j² = k² = -1, BUT ALSO its the case that ij = k, jk = i, ki = j. It gets worse; quaternions are non-commutative: ji = -k, kj = -i, ik = -j. Quite a mess. Wikipedia has this multiplication, as well as its simplified form, here: en.wikipedia.org/wiki/Quaternion#Hamilton_product

Realise that there are two types of people in this world.

producers and consumers.

If you want to be a producer then you have to put in the buttload of effort it takes to be a producer

also this site is full of consumers. If you want to get to work, only come here to post the updates of your work. Otherwise get off the internet

Don't forget about the idea guys.
Being an idea guy only works if you have the capital to hire people to do all the hard work for you, and then the idea guy keeps a higher percentage of the profits and becomes the business owner.

Yes, I would recommend learning python first. GDScript does have differences to real python but they are almost entirely superficial differences. Everything you learn about python will directly apply to scripting in Godot.

The great thing about python is when you install it on your computer you get a python console that you can play around with, entering different commands and seeing the result. It is incredibly helpful for learning the language when you can just play around with it dynamically instead of having to write it in a text file, save it, compile it, run it, etc.

Does anybody know what this Unity Error means?

I was going through the Survival Shooter tutorial and I get this with both my code and the one already finished from the files.

Error CS0006: Metadata file 'Assembly-CSharp.dll' could not be found (CS0006) (Assembly-CSharp-Editor)

what said, the colour for the ocean is too close to green.

So, trying to figure out jumping, I followed a physics tutorial.
It gives much better movement than what I was trying to do previously, the jump seems to more accurately mirror super mario jumping, and I guess I can add friction to prevent stuff from sliding when colliding with ground or reduce friction for slippery platforms which actually gives me a great idea for the game, problem I've run into with this is that I will have to define what collisions reset the "canJump" variable to true, because as seen in the video here if the ball collides on the side of an object the variable is set to true and a delayed jump can happen in mid-air.
The collision check happens outside of the update(dt) function hence the delayed jump, so it takes a moment for canJump to be set to true again, this doesn't seem like a problem at the moment.

Close your IDE and start it up again.
I get that sometimes.

Should I just read the Blender manual, or..?

I have a question, if I were to make a 2D game and I want it to run at 60FPS, do I still need to do 60 separate and different frames for every animation on average?

No, unless you want a super-fluid animation that takes one second to happen.

Blender is not an easy program to learn because it is incredibly feature-dense, giving people the impression it's like a 747's cockpit with all its buttons.

If you've done modeling before in something easy like Milkshape, Wings3D, or Anim8or just find the equivalent tools you are familiar with and work from there.

Tab Edits a mesh, E extrudes, G moves, R rotates, S scales. Right click selects, shift right click selects multiple. Selecting two vertices and hitting F will make an edge. Selecting two edges and hitting F will make a face. Del will show you options for what elements to delete from what you have selected. There are 3 buttons on the bottom of the 3D view to change whether you select a point, edge, or face.

That's basically the quick start guide to modeling in blender for beginners.

No?

You normalize the frame time to be between 0..1 and then scale it up by the number of frames you're able to draw.

OK then.

Here's a thread with some useful suggestions:
archive.is/jDhsk

If that doesn't work you might have to manually download the dll and drop it into system32.

Anyone got any decent tutorials for Godot?
It's a total clusterfuck.

Just do the ones on the site.
They're pretty decent, sans the pong tutorial.

I'm trying to figure out how to create a grid of sprites on scene load, but that's proving elusive.

For some reason you can't do a lot of things on the _ready() function. You can't make children nodes for example.

Easiest easy to get around it is this:

func _ready(): call_deferred("on_start")func on_start(): make_grid(64,64) # or whatever

To instance a scene you use:
# this creates the object, but it still needs to be added to the scene hierachyvar my_obj = preload("res://myshit.scn").instance()# Assuming this script is being run by the WorldEnvironment or similar this will add it to the visible sceneadd_child(my_obj)# then you can do shit to it by calling your variablemy_obj.set_translation(get_parent().get_translation())my_obj.set_name("niggers")

I'm on my phone so apologies if this all comes out like shit.

Post my god damn reply Holla Forums

Are we… dead?

Fresh new mechanic for this dying thread!

The smaller ships can fire a thruster, think of like the thruster tool in Garrys mod. You can have it stick onto pretty much anything and turn it into a projectile to use against the bigger, enemy ships.

You can also fire it directly onto the enemy ship, but it wont do much. However if you get your teammate to also fire on them and have both of your thrusters exert force in the same direction you can actually push the enemy into environmental hazards and the like.

What do you think?

That code is pretty useful, but I still don't know how to make resources. The tutorials on the website are utter shit.

How would I make "myshit.scn", which would contain a single tile?

Here's some code I did to help me understand how to create new nodes and free them. You can do the same with sprites and just create a function that loads them into a grid.

extends Panelvar l;func _ready(): get_node("Button").connect("pressed",self,"_on_button_pressed"); set_process_input(true)# when the button is pressed, generate 100 nodes of Label objects.func _on_button_pressed(): var i = 1; while (i < 100): l = Label.new(); get_node(".").add_child(l); get_node(".").get_child(i).set_text(str(i)); var x = rand_range(0,1024); var y = rand_range(0,600); get_node(".").get_child(i).set_pos(Vector2(x,y)); # add group functionality #get_node("Button 2").get_child(i).add_to_group("labels"); i = i + 1;# free the Label nodesfunc _free_nodes(): var i = 1; print("Freeing nodes..."); while (i < 100): print(get_node(".").get_child(1)); get_node(".").get_child(1).free(); i = i + 1; print(i); print( " nodes freed.");# calls _free_nodes() when ESC is releasedfunc _input(event): if event.type == InputEvent.KEY: if event.scancode == KEY_ESCAPE && event.pressed == false: _free_nodes();

How is your scene tree set up?

Daily remembrance that you devfaggots are the only hope for this decadent and mediocre industry, keep at it.


That sounds and looks neat. Why is there above one of the asteroids? Can't make out what it says

Just these two nodes.

I get the error "Can't add child, already has parent."

I think I know why; I'm trying to instance a tile object I have in the scene and recycle it. Is there any way to unparent it?

You need to save your tile externally before you can instance it.

Select the tile node and hit the little movie-clacker button to save it as its own scene file.

youtube.com/watch?v=zE_-AHFEgEY&list=PLda3VoSoc_TR7X7wfblBGiRz-bvhKpGkS&index=29

can any unrealfags explain how to:
efforts so far with 'Role' and 'HasAuthority()' has had unexpected results

also a more general networking question:

Blueprints or c++? I've only done networking on c++.

Basically, if you want the code to run on server you do a check for (if Role == ROLE_Authority), for client (Role < ROLE_Authority).
Keep in mind that certain classes will only exist on the server, and others on the client. For example the GameMode is only on the server, HUD / widgets only on the client and player controllers only on the owning client and server.

Any code that affects general gameplay should be done on the server, so for example taking damage, shooting projectiles, reloading etc. That server code should call to all clients to play cosmetic effects like animations, and to the owning client to change the HUD (like ammo count)

it is in C++. i've been working on client side prediction for players.

the problem i have with ROLE_Authority is that as far as i can tell it's true on all clients. either that or the on screen debug prints to all clients spawned from the editor, i've been using the debug messages to find out what's been executed and by who.

That's what you call a REPL (Read, Eval, Print, Loop). Any decent interpreted language has one of some sort.

ROLE_Authority will only apply on dedicated or listen servers. On screen debug messages will play for every client.

if on screen debug messages print on all clients, what's a better way of displaying debug messages?

sending to the output log via UE_LOG

What do you need client side prediction for? I'm fairly sure that the movement components have inbuilt prediction using their velocity, so long as they are replicated.

it's for player's based on input

If it's for player character movement that shouldn't be necessary. Characters that use CharacterMovement Components that are replicated already have prediction, so long as Replicate Movement is set to true.

Is it possible to do multidimensional arrays in Godot?

I'm really curious if I can get away with using ACELIPS.

youtube.com/watch?v=Xa5IzHhAdi4&feature=youtu.be&t=27m22s

You know that the max function is just a wrapped up if statement, right buddy?

no no NO FUCK ice/sliding levels in platformers aren't fun and never have been fun

That's pretty creative

Maybe I find them fun.
Besides, it'll be fun when princess peach fucks enough goombas to make a platform slippery from sex fluids that causes her to slide into more goombas.

It says "Use F to activate your gravitational field"

There's an isServer function. If it returns true the code is on the server. If it's false, check authority. You have authority over the client's pawn, other people's pawns will return false.

Authority has nothing to do with being a server or not, it only determines if you're the one that spawned said object (and presumably replicate it to the server if you're not the server yourself, though that's not true for objects like HUD widgets).
docs.unrealengine.com/latest/INT/API/Runtime/Engine/Kismet/UKismetSystemLibrary/IsServer/index.html

I just finished fine tuning the scope so that distance can be measured with it. At this point I'm mostly done with my end of the Dragunov, now I just have to wait for my partner to texture it (which he is taking his sweet ass time doing).

For those who aren't familiar with how the distance measuring works, each of those pillars are 170 cm tall and are at different distances away from the player. You place the bottom of the pillar on the straight line and line up the top so that it is just barely touching the curve. Wherever it lines up is how far away the object is.

So in Scope1, that object is 200m away, in Scope2, that object is 400m away, and in Scope3 that object is 600m away.

I could have just erased that part of the scope in, like, 2 seconds and been done with it. I don't know why I do this to myself.

Sounds like your partner is an aspiring nodev. Why don't you just slap on a simple texture yourself? Relying on others that aren't dependable bogs down development.

I am tempted, but I haven't done it yet because I know him in real life and interact with him regularly. We work in the same place so it's kind of unavoidable. If I were to do what he has agreed to do, especially when I have other things I could be doing in the game, I would be stepping on his toes and it would be really awkward when go to work with him. Because he's the only person I really like at work I don't want to loose that. But anyway I'm just going to go on a little bit of a rant here.

He has been part of the project, at the latest, since May 18. The main thing he wants to do is level design, but I don't think the game is far enough along that he could actually do a good job with that (I haven't even started on enemies yet (but once I fix bullet ricochets that's next on the list)). He has experience making textures when modding games, which he told me about and sent me pictures and the such like, so I'm having him make the textures for the guns. However, he hasn't finished a single texture. It's a bit frustrating because working on this game is like a second job to me (I did the math and I spent around 38 hours a week on the game, including design work, animating, programming, etc.).

If he spent just an hour a day working on the game since may 18, he would have spent 26 hours on it. That's at least one texture, isn't it? But I just get word of him working on the textures (when I ask him) and no actual textures. I told him to send me any finished work but so far I've gotten nothing. Does he just keep forgetting?

Also I'm always the one to bring up the game in conversation. I would think that if he was interested in the game he would want to contribute something even when I don't ask him about it. When I do talk about it he still has things he want's to see in the game and it is nice to have another brain to flesh out the mechanics of the game with. If nothing else it helps to stave off the burnout.

He still seems interested. He's read the lore I've written for the game and said that he likes it. He doesn't really try to change the conversation when the topic of the game comes up (and by comes up of course I mean that I bring it up). I don't think he hates the idea of working on a game. But as it stands right now the people in this thread and those I've purchased weapon models from have contributed more substantially to the project than this person who is actually a member of my team. The most I've gotten from him that has made it into the game is the idea to add the MK14 EBR and the Dragunov SVU, which I then actually implemented into the game.

Anyway, sorry for rambling. Like I said I still have some figuring out to do with bullet ricochets so I better stop blog posting on Holla Forums and get back to work.

That's only if you're doing it in BP.


I forgot to add that you should mark your functions as client or server depending on which it will run on. I haven't looked through it myself, but there's this PDF on networking and replication in UE4 that you should probably look at unless you're happy to rely on documentation like I did.
cedric.bnslv.de/Downloads/UE4_Network_Compendium_by_Cedric_eXi_Neukirchen.pdf

What kind of paying model have you agreed on? Have you tried being upfront about it and simply asking him whats the deal with his lazy ass?

Just tell him if he's too busy to work on the textures you can cover it. That way you give him a legitimate sounding excuse to be a nodev (making it not weird when you inevitably just do the work) without accusing him of being a lazy nodev.

t. Professional manipulator

That may be part of the problem, there isn't really a paying model. I'm working on it because I love working on the game and I've gotten to a point where it's just part of my schedule. Making money from the game is a hopeful possibility and not something I expect (or really need) to happen.

I guess my partner doesn't have any of the needed motivation or discipline to do anything on his end.


If it comes to the point that I need the textures and don't have anything more important to work on I'll probably end up doing that.

void Update()
{
float bestDistance = -1f;
float bestRotation = 0f;
for (int i = 0; i < 4; i++)
{
RaycastHit hitInfo;
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
ray = new Ray(ray.origin, new Vector3(ray.direction.x, ray.direction.y + (i*90f), ray.direction.z));
int value = LayerMask.GetMask(new string[] { "Wall" });
var hit = Physics.Raycast(ray, out hitInfo, 1000, value);

Physics.Raycast(ray, out hitInfo);

if (hitInfo.distance > bestDistance)
{
bestDistance = hitInfo.distance;
bestRotation = i * 90f;
}
}

Debug.Log("Please rotate : " + bestRotation);

}

Anyone know what the hell is going on here? There's a ton of different 'distances', but the best rotation is always when i=0.

I want to spawn the player facing the direction furthest from a wall.

If the best rotation is always 0 then you're probably not setting your best distance either. Why don't you log the values of bestDistance and bestRotation when they are set in the loop?

Hey, how are you implementing raycast bullets with travel time and drop in your game? Are you casting a ray with a short distance, and then after a delay, casting another short ray where the other one ended? Or some other shit?

Can code on GameMaker, can't art for shit

I've done casts exactly like that, working off of basic ballistic physics. Works really well if you're not worried about replication. If you want bullets to replicate you're in for a pretty shitty time due to the way spawning actors works. I haven't yet figured out a way to make it data based (to remove poor networking performance) while having the bullet impact effects replicate well at the same time unfortunately, but I've taken a break from it anyway.

Do you wanna see some source code for it?

I'm actually working on an online multiplayer game, and when I saw that you were using raycasts instead of physical projectiles, I thought that could save me some bandwidth and performance. Now that you're saying that it's not the case, I don't know if there is a better option than physical projectiles when it comes to a replicated environment.

By the way, to be more concrete, my system is very similar to the one that you can find in the first person shooter example. I spawn a projectile, an actor with a projectile movement component, which has a basic primitive collider, and some basic code that damages players when hitting them. It replicates, of course. That's it.

Could you point me in the right direction here?

Yeah, that's pretty much it.

In the projectile there is a the variable "velocity" which is in cm/s (because in Unreal Engine the default distance unit is cm and the default time unit is seconds so this makes it easier).

Every tick I multiply the velocity by the time since the last tick (done by taking the delta time from the tick) and add that value to the current object location to get where the actor will end up. Now I take the actors current position and the position it will end up and do a ray-cast. If there's a hit then I do everything that entails (penetration, playing the hit sound, damaging destructible objects, whatever). If there isn't a hit I set the projectile's position to this new point and do all of the math for things like air resistance, wind, gravity, etc. and change the projectile velocity accordingly.

I don't actually use the physics engine in the game to calculate any of the bullet physics. I have no idea if this system plays nice with networking.

Same system as this essentially. I later changed it to data based rather than actor based as that does stop the replication issues but while the players can shoot each other, I can't figure out how to get cosmetic effects replicating (e.g bullet impacts). I could try doing multicasts from server but I prefer to use OnRep.


I would avoid using the projectile movement component and just do what is doing.

Oh, so that's how the cookie crumbles. I'll try to implement this system later, and see if it works better than projectiles.

One last thing: what do you mean by "data based", and "actor based"?

Actor based, as in every time you shoot a projectile an actor is spawned.

Data based as every time you "shoot a projectile" it actually just creates a data class containing the projectile properties (caliber, mass, drag, velocity, etc), removing the replication overhead from spawning actors which was killing my game.

One last update before I head off to bed. I got ricochets working and fixed the penetration system in the process (which I didn't even know was broken).


If you want the math I'm using for air resistance, bullet drop, and wind just ask. The information on the physics is easily available but figuring out how to implement it can be a bit of a hassle.


I'm also interested in this.

That ricochet looks pretty cool. I implemented penetration but never added any ricochets. Did you have trouble trying to implement the math?

I would like to make blasters for a possible Star Wars prototype, I am assuming someone already did it but browsing the unreal engine forums is kind of hard sometimes.

There's a node for that.
docs.unrealengine.com/latest/INT/BlueprintAPI/Math/Vector/MirrorVectorbyNormal/index.html

After reflecting the vector I added some randomization using the function I already had for randomizing the projectile velocity as it exits a wall when penetrating.

So long as you've got a particle effect for the blaster graphics that should be incredibly easy. I don't see how you'd have any troubles.


Oh I see. That's one way to do it. I assumed you would've found some fancy physics online that gives you accurate ricochets based on impact angle and velocity etc. Penetration I had based on surface type and thickness, and the force of my projectile rather than random velocities.

Could you give us an example on a data based system? Does it work on raycasts?

Yeah it works with raycasts. It's really dirty and hacky right now while I'm trying again to make it work properly with replication. I'll post it soon after I succeed or give up after giving it a quick clean.

In short, I use a WorldBulletManager actor to store an array of current projectiles in the world. Every time a weapon fires, it will add a projectile to that array, and every tick from the actor will have every bullet in the world do its thing. On impact, the bullet will play its impact effects and delete itself from the array. I've got the bullet data stored in a UObject class at the moment although it would be possible to do it in a struct, especially if you didn't have any variation bullet classes but I have a little bit so that's how I'm leaving it for now.

After posting shit here I've gone and had a look at making it work with multicasts. I didn't want to do that initially because of autism and how it differs from how an OnRep works, but it should be fine given that it only applies to bullet impact effects.

Will try to clean up my code and post it here soon. How do you guys want it, given it's over 2 classes, posted here in code brackets or uploading the cpp + h files?

On the topic of ballistics, I saw this link on plebbit a few days ago: blog.forrestthewoods.com/solving-ballistic-trajectories-b0165523348c

Personally, I don't work with C++, I'm doing this entirely with Blueprints. This will trigger your autism, I know, but C++ is a lot to learn in such a short timespan.

I know damn well how to handle parabolic movement, physics taught me plenty of that in school. However, air resistance isn't quite something that I was told about.

Can now place up to 3 thrusters at a time.
Set up a crossfire of suddenly moving asteroids or but all your eggs in one basket and place them all on a single asteroid!

Honestly you should start learning C++ as soon as possible.
It's a highly useful skill to have, but it's a language that will take you around 10 years to master(not even exagerating here)

That's the point. I started using UE4 a bit more than a year ago, and I'm about to get into university. I don't have a lot of time in my hands. Blueprints is the next best thing, and with 4.12, it's even better.

That's fine. When I was learning the engine API I was doing that through blueprints. I later moved on to c++ for performance benefits and general cleanliness. I hate how messy and ugly blueprints get in a short amount of time, even if you keep it as clean as you can.

Learning c++ for use in UE4 is very easy, but when it comes to creating more custom behaviours and systems you need a good understanding of it to get the most out of it and not run into pitfalls. At the very least, you should understand programming principles because it will benefit your blueprint code immensely. Knowing c++ inside and out is only a benefit if you're using c++.

I'm used to C personally, it's what I've used more than any other language up till now given the size of my project, so moving to c++ wasn't too difficult. I still have moments of stupidity and bad coding however, especially when tired or overworked. To become a real master at c++ would take a very long time.

If you guys are interested I've got the code for my data based projectile system working here. Works with replication via multicasts for testing with 2 players. My AI is currently dead as I'm making a whole new system so I can't really test it with 40+ actors to see how that holds up. Hopefully it would hold up well.

a.pomf.cat/afycdc.7z

Feel free to ask questions.

And I just realised I left in some silly redundant code in there from testing. Oh well if you're smart you'll figure it out.

So, are the godot tutorials not well made or am I fucking retard?
I'm a python baby and barely managed to understand shit in the pong one.

posting useful shit for anyone who's still goyim enough to use unity

The Godot tutorials are awful.
And there are almost none around the Internet.

What do you need help with?

Nothing specific at the moment, but thanks for offering help.
I just thought I'd do all the tutorials to get used to the engine.

I used the ones from gamesfromscratch to learn the basics. There's still no proper 3D tutorials but they cover the 2d aspects well enough.

ayo have a bump

Is there a decent place to get placeholder assets for free? Doesn't have to be great looking stuff, or textured, just that I'd rather spend as little as possible on placeholder assets while also not using scaled 1m cubes for everything.

I'd just yarr UE4 marketplace stuff since they won't be in any sort of release ever but can't seem to find them anywhere

I remembered I have a cgpeers account just as I was typing this, and sure enough there's at least some stuff there. Still posting to remind you guys cgpeers registration opens tomorrow.

Why on earth do places do this?

Internet elitism

Well, I can give u a rough idea of what I've researched in the past when it comes to physics related stuff for networking (so u can see if it relates to how u do it).

The issue with networking and physics is the idea that the physics calculations aren't 100% reproducible (i.e. the physics simulation isn't deterministic).
All the native physics engines for big game engines I know of, notably for unity and unreal (they both use physX right?), don't have a deterministic physics engine (the physics engine isn't suited for simulations, like say, the newton physics engine).

There's a few factors, but the most common factor is the point that operations concerning floating point math isn't consistent across all hardware (furthermore hardware differences aren't accounted for in the physics engine); leading to variance in the actual results… unless all the calculations used/resulted in integers (obviously it's not possible to just use integers for physics simulations, so that's off the table).
So, these eventual floating point differences introduced, i.e. floating point error, leads to subtle, and even huge difference when calculating a physics formula (which generally encounters a lot of floats); so as you can tell there's a need to manually counter this.
The actual solutions for fixing this for physics depends upon how you handle the networking for your game (tbh haven't really researched this much, just the physics engine part)… but here's some solutions I've read about.
Synchronize all the physics objects after a certain amount of ticks (as to counter the floating point error), but after a certain threshold this becomes a bloated solution (I think unreal's and unity's native networking solutions use this).

Manually adjust the actual outputs for physics calculations, as to be consistent across all players/hardware (i.e. force the outputs to be more deterministic). How you actually implement this really depends on what kind of precision you need (and the amount of floating point error potentially introduced).
Although, even with a slightly more precise system you could have a wider gap of ticks before having to synchronize physics objects.

There's quite a few other solutions, but I'm too lazy to type em' out.


So it's not invaded by leeching faggots.
i.e. it wouldn't matter if said leeching faggots got banned for not seeding, they'd just remake an account, and keep leeching if registration was always open.
also, closing registration, and having good seeding/leeching rules that members will follow at least sorta mitigates the "no seeders" possibility for a torrent you really need/want.
Also a small community is comfier, and less worrying considering the implications of pirating dev related shit.

woops, meant to quote this on the second line

else it makes my rant look like a random offtopic post
sage for correction

I-I'm making it

what'd you make?

Did you do the usual stuff everyone else who has a successful asset does?
Or did you not research how to do that, and just run with your balls in the wind hoping for the best?

The first one! I hope.

now with slightly more curves

How does it feel making it? Worth it?

what is it for? For path finding? Animation of a sprite path?

Sorta like how mario does it right, to move between areas?

I was commissioned a wig, planes, not any hair solution… here we go. Also, if I add some bones to it can I still attach it to another skeleton? it will go to unreal so I assume I will have to assign it to the model's skeletal mesh or maybe a socket.

I've been shilling as hard as I can. I think I've made less than $1 an hour from it, so far, once I factor in my artist's cut. Probably not worth it for the money, maybe worth it for the experience of working with the worst user development tools of all time.


Pretty much. I wanted to mentioned mario brothers 3 in the description/PDF, as well as a few other games because they're a perfect example of what it did, but after two weeks unity rejected it and told me to remove the references.

Basically, the editor portion helps to build the map, and I threw in some AI/player movement pathfinding scripts so it's useful to people without them having to understand my shit code. Internally, moving the player consists of everything having a goal (the player's goal being one node in the direction they're pressing, then the enemy's goal being where the player is moving), telling everything to calculate the path, and then they move simultaniously. Co-routines are a godsend. There are a few things that a natural byproduct of the pathfinding, like enemy sight range.

that was kind of a ramble

3D question: if I have one skeletal rig for a bunch of animations (think people running, crouching, punching, idling), and a bunch of separate meshes for component body parts (arms, head, torso, legs), is it possible to compose a frankenstein style hierarchy in a 3D framework and have those meshes follow the skeleton? Similarly to how you'd equip weapons and armour in an RPG, but these components would deform / change with the animation, not just rotate or reposition on the whole.

Pretty much but you may want to either make a whole unimesh or prepare to paint weights where you want some nice flexing.

What do you guys think of pico8?

Hi, your Commissioner-san here.

Multiple UE4 skeletons can be stacked on top of each other in Blueprints, but AFAIK they have their own animation BPs and I have no idea how to make ones animation affect anothers unless they all use the same animations set.

What I would do is to extend the hair skeleton to make an invisible set of bones that represent the body and have the hair collide with that. To make it invisible just have it set to a different material so I can apply transparency to it. I can then socket the hairpiece by aligning the torso replica with the actual torso. As I mentioned before I don't care about clipping with arms and legs, so maybe just create an amputee standin. The horror.

That would be like a hitbox, will try, I sent you an updated screenshot, then I will use the regular skeleton and maybe add chains, I'll dig onto it anyway.

makes sense, and sounds like it could be useful for a very specific project.


looks pretty clean imo, nice

Second half of the job will be a nightmare though.

Uh, before anyone posts a vomit reaction image in response to my model, since I'm

The model looks better after material effects are applied. And I'll ignore the parts that look wonky if they're going to be covered up anyway.

Some history: Long long time ago, I tried $500 models made by DESIGNATED gentlemen, as well as one-time I splurged a whopping $2000 model made by a supposed "AAA veteran", and realized too late when it comes to anime models they all turned out like shit, so I decided instead of wasting so much more of my day job salary, to try my hand at modelling myself since how much worse can I possibly be at it? So I'm cutting costs on 3D and focusing on making the 2D better instead.

Thankfully, the people on /agdg/ have been very helpful, like this user helping me with clothes and physics.

My project btw:
8ch.net/u/res/1250.html#q6359

you actually spent that much dosh on models?
so far i only spent 100$ on my nigger boxer, since he had animations
and 50$ on the Ragdoll Workshop asset, since it's more or less the best animated ragdoll thing i can find for unity and i failed to create it myself, my version sucked

Those are the average quotes I get from polycount for 10K+ models.

I did try more local sources… e.g. $150 for mobile tier stuff.

Of course, Mixamo has been a godsend.

Let's see a screenie of that $2000 model

If they aren't catered to the needs of your game, they're likely to be a waste of money. Especially with 2k dollarydoos. Come on now, really? I want a pic of that model as well.

Prices were for full custom models and inclusive of standard animation sets.

My heart sank when I first got the screenshot. But since it was a done deal, no choice but to finish and say thanks to the modeller gracefully. The face was fixed a bit though but was never going to be moe. That's what I get from people who have been modelling ugly AAA monsters for most of their lives.

I am not so naive now. But I'm trying to make UE4 games that look way better than MN9 and with only 10K total budget. I can model environments myself. I'm glad I'm the programmer, who knows how much programming would cost.

Checked your other thread a bit, seems interesting, I am getting some rest right now but I will try to find some interesting solutions, BTW, how did you get your custom model rigged on Mixamo? did you just import it on Fuse and upload it to auto-rigger? cuz then I may have some ideas.

No need to import to Fuse. I just got the .obj and .mtl, made a zip, and uploaded to the Mixamo website, the autorigger took care of the rest. The only requirement was the file size limit and a T or A pose.

Well I know what I'm going to see in my nightmares tonight.

You didn't pay for that, fuck off.

Interesting, I'll see what I can try, that other model looks horrible BTW, I know I am in no position to say that but that face is a nightmare… I would use it for a boss in any case since you said there were eldritch horrors on it.

I'm think about picking this up along with Voxatron, since they come together. Would anyone say this is a good starting place for someone with almost no programming experience? I did a little bit of C++ (like 2 months) in college before I dropped out and I had a decent grasp of it. I really want to make gaems. v_~

Jesus Christ.

aw fuck, well user… haha, I guess we all learned a lesson here today

user AM I KAWAIIIIIIIIIIIIIIIIIIAAAAAAAGGGHHHHH

There is a Japanese urban legend about a girl who asks that, she kills you anyway.

...

I WANT YOU INSIDE ME user

INSIDE ME FOREVER

Wasn't that the one with the cut up mouth, who kills you if you say no and cuts up your mouth that way if you say yes? I think you're just supposed to ignore her, or confuse er with your own questions.


This one kinda looks like she transforms into eldritch Bane.

I think you're supposed to tell her you're busy and don't have time for her shit. She actually fucking apologizes for taking your time if you do.
Japan's so fucking workaholic even their supernatural murder monsters have work ethics.

Hey lads, I'm dealing with including further actions in my character which need more animations, in UE4, with an animation blueprint. What's a good way to include switching animations inside a state machine, without resorting to using state changes through variables?

I'll elaborate. Here's an example, I have a state, which handles walking. Now, the usual way to switch between animations would be to create another state, and connecting this one to the original through transitions, which are triggered when a variable changes. In the second state, the character is walking and aiming. The animation blueprint switches to the second one when a boolean variable is true.

Obviously, this is problematic when you have multiple aiming animations for each weapon type, like pistols, rifles, special weapons, and others. You end up with a clusterfuck of states. How can I change animations in this fashion without resorting to state changes?

IDK, link the state to the weapon and not the character blueprint?

Do any of you guys know of good podcasts?

I clean a pool all day so I just sit around and I could be using my time better

Buy Voxatron, its $20 and includes Pico8 (instead of just $15 for Pico)

It uses Lua for programming, but its all fully integrated into the environment so its not too bad.

Have state machines for each weapon, one for the legs/rest of the body, and combine the currently equipped weapon's machine with the body's machine?

Hahahaha holy shit there is no way in hell you paid 2 grand for that abomination

Voxatron is alright, but I'm not a fan of voxels so I didn't tinker with it that much. Pico on the other hand is fun as fuck to mess around with if you like making microgames.

Do they have filesize limits on Voxatron as well, or no? I'd be keen on making a Bomberman 64 clone on it, I think it'd be suited to it, if it was allowed to be bigger.

Otherwise, I guess I'm cloning MinerVGA in Pico

I don't think so. Like I said, I haven't messed with it too much. There are some other limits I know of though. The FOV is limited (can't remember the size), and the map height is maxed at 48 voxels.

I'm bothered that the dress is laterally symmetrical.

Yo nogs, bump

I'm bothered he paid money for that abomination. If the payment wasn't upfront, I would have taken one look at that… thing and told the modeler to fuck off.

>HOLEEY FUCK, it's so easy, dayum

the system is retarded
even if i free myself from one exam, i still need to go for the theoretical exam on the same day

I know how that feels. Going from c++ where you are manually managing memory because of autism to something like c#, you can make progress significantly faster and easier, especially for certain types of projects.

Working on AI. It will patrol certain points until it sees the player, at which point it chases.

At the moment the AI is not in any way affected by the guns and doesn't damage the player. Also, the AI cannot climb or jump right now, unlike the player, so staying out of reach is pretty easy.

Are you using the UE4 inbuilt perception system for the AI senses or doing something else?
Also are you going to stick with BTs for your AI?

That's some terrible fucking music right there mate. And the players jump looks kinda floaty. The rest is noice.

Did you not read the warning for that Love2D tutorial? For platformers it's easier to do it on your own and you'll get better performance and fewer bugs. Platformers need to be tight and you will not get that using this. You can easily make gravity, ground friction, and other such properties with your own physics code.

I'll say again: Do not use Box2D unless absolutely necessary. For some things it is a blessing, for others it is a nightmare.

And another one down! Finished it up in one day too! Would've been a couple hours had I not gotten sidetracked modding the shit out of New Vegas.

Anyways. Here's a Browning Auto 5, lovingly rendered in 300-ish polys (I would start using tris as measurement, but I hear conflicting opinions on that). Note: I only made the stock separate from the receiver for the sake of the color reference. My proper model has it attached to the receiver as I would normally have it. Also, I messed with the sights on the gun since the actual thing has this obnoxiously small, barely visible point. Like always, I look for advice when posting this so if you gots any or if you see I fucked something up then please gibs. Also, if a gun model is >=500 poly, then what would be a good polycount to aim for when modeling a person?

When did the top/recommended boards get added to the top of the page? I'm not complaining since it'll bring more traffic to /vx/ and /his/, but why?

You know, it doesn't hurt to give more than one measurement.

No, I didn't see any such warning in the tutorial I used:
love2d.org/wiki/Tutorial:Physics

See for yourself.

PhysX is crashing on me every time I try to apply to the wig, I will try Hairworks later instead, it may give me an easier time and is compatible with UE4 anyway, since we are using APEX I think is not a big deal.

fuck man i need to figure how to implement something like this into my own homebrew engine

Particle systems (especially 2d ones) are really simple. The most difficult part should be making them scale. How big a problem this will be depends on how many you want to have on your screen at any given time, though.

A particle has a lifetime, a color, a size and a velocity. All of these properties can be animated throughout its lifetime. In its simplest form, you say it has a start-color, -size and -velocity and an end-color, -size and -velocity. While it's alive it simply performs a linear interpolation.
// Lerp(from, to, progress between 0 and 1)currentSize = Lerp(startSize, endSize, currentAge/ maxAge);// The same procedure for all the other properties, too
All you need to add afterwards is a way to randomize them within some range.

It's similar to boid-systems in that it's amazingly flexible and produces seemingly complex result, despite being so simple. If it looks bad, add more and it will look better (unless you made some programming mistake).

There are two things you'll want to keep in mind though.
Don't instantiate new particles/destroy old ones at runtime, unless the total number was increased. "Dead" particles should only become invisible and placed in a set of waiting particles. New particles should be taken from that set, initialized and thus reused. Creating new and destroying old ones will kill your performance.

The effect that makes the centers so bright is a result of additive rendering. It happens without any extra code, all by itself, when adding a sufficient number of particles and rendering additively. If you want a flexible particle system, you maybe want to add an option to override the blending mode and allow others like multiplicative, subtractive, XOR, etc.

Thanks for the update. But AFAIK Hairworks requires the custom github UE4 build… I only want stock UE4 builds. So I would prefer PhysX. If you can try to keep the elements to a minimum just to get the basics of the hair to work, I will take care of adding detail to the hair (probably with opacity masks or something else).

well i already have built a particle effects system
the problem is making new effects is kind of a pain
I would like to use a 3rd party program to make the effects then import them into my game somehow

OK, I'll try again later, guess I can just extrude from the scalp, I'll see what I can do.

This doesn't showcase much, but it's probably around as powerful. (C#)

My particle class is very simple, it's actually struct so all the particles have value-type semantics, but the important thing is that if they're created in an array, there's a ton of data density (but there's little point in passing individual particles around, since this would just copy all the values; everything I do is handled via T[] of my Particle type).

Anyways, they've got a Vector3 for Position and Velocity, and a float for Life and LifeMax. That's it. (Although there are properties that calculate IsAlive and Percent). Most of the work comes from my ParticleController class, which takes a delegate (method pointer) with a signature like:

It basically iterates the collection of alive particles, and applies an "effect" to the particles. This could be simply updating them (removing life from them based on the timestep and offsetting the velocity by position), or applying any number of acceleration forces (changing velocity to account for wind, friction, gravity), or more complex behavior (gravity wells, attractors, etc).

Particles also have two byte fields that are up to the user. I used them personally as flags, so I could indicate other things like collision types or color/shape to render them as.

you gotta be fucking kidding me user

A real autismo would keep all their individual locations packed together in one array each, rather than a struct. Gotta cacha that data when iterating through them.

incidentally, seeing how much autism that polandball game triggered, I think it's time to steal our own memes and make them into games

8ch.net/v/res/9720894.html

meme games are outdated by the time they're done

Oh, I hadn't realised that that "Select" node existed. I had looked up a Switch one, but there seemed to be none for animations. Seems like that's what I was looking for, thanks.

they're outdated because people start on them when reddit gets a hold of it

If someone started early, they'd have a chance.

But Vector3 is a struct provided by XNA. My understanding is that it has a size of 24 bits (3 bytes), and that C# allocates all the memory per instance in one contiguous chunk.

So even though my struct is V3/V3/byte/byte, creating a new instance should allocate exactly 64 bits (8 bytes) of memory. Then, when I create an array, it would allocate 64*size + array overhead.

It's good mate.

Or did you mean grouping it by data type, so that all the positions were contiguous, followed by all the velocities, etc? I don't know of an elegant way to do that in C#, and in virtually all cases, wouldn't really matter either way.

Kill your self that music is awesome, you must just have terrible fucking taste in music it evokes the exact feeling the song name claims to evoke: stress (by justice) not many songs can accentuate a certain emotion that well.

You're using XNA? That's how I got started. I liked it. Too bad it died horribly.

Maybe it was when I was looking at other tutorials. Either way, I'll let this guy explain it:
learn-cocos2d.com/2013/08/physics-engine-platformer-terrible-idea/

Go home, plebeian.

Here let me "help"

What about the color of the pixels?
Also thats not a lot of particles how many can you get on screen at 120 fps
I got up like 10000 particles

and yeah, I did mean grouping by data type. Particles are probably the only thing that actually matters, there, but I suspect C#'s bytecode dwarfs any attempts you might make to reloading the cache.

Anyone here with experience integrating a scripting language in an engine? I'm working on an engine in MonoGame right now and trying to figure out if it's a good idea and if it is, which language would be optimal. So far my testing shows that Lua (NLua) tends to be way, way too slow. Would runtime compiled C# make sense for scripting?

You could do that, yes, but honestly, you're better off just using IronPython.

It's pretty quick, assuming you're not running a toaster.

Color is handled by the user's rendering code. Maybe you want to draw all particles from a particular ParticleController to fade from White to Black, or maybe you want a particle cycle throughout the spectrum twice over its lifetime - deferring it to the user lets you do that. Again, you can set a byte value with your own semantics if you need to. Likewise with textures. It was simpler to just push it to the user.

XNA runs at 60 fps by default, not sure how to bypass that. But I did have 10,000 particles rendering and updating at 60.

Seems like that guy was explicitly referring to box2d, and I am unaware whether or not love2d utilizes that as the physics engine, but I also notice a lot of comments chewing out the article writer for neglecting to mention how many of the problems he describes are solved with a number of functions/callbacks.

I'm getting paid for this :^)

Well, I've tried this setup, but it looks like the weapon state machines aren't relaying animations. I mean that, in my setup, the lower part of my mesh is being animated, but the weapon animations aren't playing, it's just a default T-pose.

That looks pretty nice, actually.
Are those free textures?
Would dungeoncrawl / 10

Love2D uses Box2D with a Lua wrapper. If you insist on using it for platforming, don't say I didn't warn you.

Hey, thanks. I dunno where the guy got it, he might have made it.

I don't want to deal with a super-complex model, so instead I've got a primary crawler that spawns other crawlers. They essentially carve out a path wherever they go.

The child crawlers can also spawn specialized crawlers, right now I've got a specific one that creates a long hallway to nowhere. Later on, we'll add rooms.

think that's too dickish?

I remember fucking around with FPS creator a long time ago and made a couple of godawful levels. I was wondering, how is Game Guru? I've heard it literally the same thing with extra bells and whistles.

Just put a treasure chest with medium drops at the end of it

but then they wouldn't be hallways to nowhere

Anyone got a good idea for the spawner-spawners?

I'm thinking of something tha floods the area

I made a slime.

Very basic but I'll probably start cropping it, adding details like shine and depth to it frame by frame.

Come to think of it, I'll probably won't need all of those frames anyway.

At least it was good practice.

Riddle me this, nodevs:

What would it take to become an independent publisher?

For a publisher it would take having money to print and distribute someone else's game, not to mention being able to fund projects as well.

Lots of self-made money.

I am not kidding at all, Tetrachromedev
It's a mistake I can only afford to go through once.


You need to actually be a successful indie dev yourself, so you have that brand cache and a reason for other indies to flock to you.


These too. I think devs would rather turn to Kickstarter if they can't get a publisher to guarantee them 100K a year at the very least.

Its at this point that your character wears a mask.

I'm a web developer who wants to get into game coding, could anyone recommend some languages? I know C# and C++ are a given but more specifically for mobile game developement.

still C++
or if you wanna be a faggot who can only develop for one platform go learn objective-c
or apples newest abomination Swift.

C++ is a shitty language that's going to take a decade to learn, and at least two decades to die.

Go for it.

I remember posting the button a while back but not the title. any feedback?

I currently do not have an actual title asset though.

I'm working with a team of 3 or 4 friends making a funpetitive fighting game. Here is picture. (because i was a bit of a lazy fuck and used my phone) of the current sprite so far.

Were there any particularly good books or videos that helped you guys get down the foundations of coding language? I want to use GML but I'm having a hard time with the logic, math, and language.

I started when I was 8
have you tried that?

Try these:

youtube.com/user/999Greyfox
youtube.com/user/uheartbeast
youtube.com/user/RealTutsGML

Awesome, giving them a watch now. I've seen a few of the first guys videos but haven't seen the other two.

Thank you user

I sold my body to remove unreachable walls

kek

that's alotta batches
fix it

Nah, it's not worth fixing. The thing causing it is only used for debug purposes.

I can get it down to two batches by staring directly at the sky

user, that's not a solution
requesting the image of the ironic box art for a unity game with a cube that can move and will fall endlessly once it goes beyond the edges of the plane it stands on. i can't find the fucking image anywhere

alright, alright, I fixed it

why can't I just be lazy in peace :(

So how long is the story mode?
Do you have waifus?

elaborate

p-pls respond ;_;

Man, I could've given you a better moeblob for free.
This is what happens when you feed kids meme advice like 'fake it till you make it'.

Tiny slimeling is coming along nicely.

Now to add shine and moe.

test

Augh

Write down you ideas and refine them. You will have ample time for game dev after you are laid off.

Sadly no. I don't slack off hard enough to get booted out, and there's always demand for Java here.

Sounds neat, actually.

I'm just drained of the will to do anything after I finish the workday, though. Don't even think I can take a gap year if I want to do something, employers are autistic about that sorta shit.

New Overload #133 is now out. Includes a nice article on programming your own scripting language in C++ allowing keywords any English language.

accu.org/index.php/journals/c362/

:)

C++ is fucking awesome. And it's even less likely to ever die now than C is heh.

COBOL is fucking awesome. And it's even lessl ikely to ever die now than C++ is heh.

Except COBOL isn't actually awesome. C++ is. The simplicity of a language isn't equal to the simplicity of code written in it. With C++ you can do any.fucking.thing. that literally can be done with the hardware (and with nice, cost-free abstractions to boot). You sure can't with COBOL.

C++ is unintelligible garbage with fifty different abstractions for one thing that doesn't need an abstraction to begin with.

Brainfuck is awesome. Not good, of course, but it is awesome.

You can talk to me when C++ disappears user.
:D

if you like that, check out the ioccc

i can talk to you now and you can't stop me. c++'s continued popularity is proof positive there is no god.

i just mentioned the ioccc, but the best thing about c++ is that all c++ is obfuscated by default so they don't even need a contest for it.

Let me guess, corporate dronework?

Well, pretty much. It's a small company that offers a huge management application for other companies. They're old fashioned, though. Which means you HAVE to always be working on something. Which just results in everyone slacking and doing busywork half the time.

Oh what the hell, time to set up Unity. Maybe I'll have fun for a change.

Yea. I walked on a very lucrative position a couple of years back because so many of my neighbors in the cubefarm were literally RIP retired in place. I've worked on some much more interesting projects with smaller groups or companies, and feel a lot better now too.

do eet.
:D

Have you tried to gamedev before your work?

Can you recommend me how to properly model animu faces?

Famalam, let's top this thread off by celebrating that I can post .mp4s again to Holla Forums.

I have some work left regarding animations and some optimizations until I can release my next build.

Why couldn't you?

fullchan has a history of fucking shit up

Not just that, but .mp4 videos made with OBS actually couldn't be uploaded to Holla Forums at all. Some weird shit was going on with the encoding, or something.

ape one of your japanese animes until it looks good
only tricks that come to my mind is that the eyes aren't spheres, and the mouth is actually a hole, seems to help when sculpting

for actually displaying one in the game, you need to do some elaborate normal fuckery to make it look like it's manually shaded, either with fudged vertex normals or using a normal map

I see. I wouldn't know, since OBS isn't compatible with my generic Intel High Definition Gwaphixth. Sucks, 'cause I don't know a better option to post progress with.

OK, but ape? as in the primate? I don't get that part.

Holy shit trying to unwrap this is such a fucking pain, It's getting to the point where I might as well have just used the "Smart UV Project"

ape as in "monkey see, monkey do"

Apes are not monkeys.

You're a cheeky one.

No, that's a baboon.

I'm guessing it came about as a result of people watching those trained monkeys dance around and pretend to be people?

I dunno, I didn't come up with the term.

But there you go, try and badly copy the annie mayes and mango styles until you get it.

...

Oh well, "Ape see, ape do" I guess.

You might want to start your blog and get people acoustumed to your game, sans you want your first impresion to be of a nier knock off

...

Fuuuuck
I've been trying to pin down the aesthetic for my sprites and I'm having so much trouble.
Being a drawfag is suffering.

I can make you a decent model for free. I'm good at modeling but I don't work professionally yet. Making a model for an actual game project would help me get some experience. Post the character sheet again if you are interested.

this thread is always a bitch to find

anyway, I added a room editor and a primitive way for them to be spawned. I need to add an invisible entrance and exit block for the crawler that spawned it to continue on its merry way.

Space management and shit. Managed to do it in a sort of not shit way.

This is really hard to make a game that isn't a 5 second Atari demo trash

Not entirely sure what Pico8 is, but those sound like completely artificial limitations

Is there some way to add a search term like /agdg/ to the catalog page user?

Yes, it's a "fantasy console". It's limitations are roughly between the Atari and Nes
lexaloffle.com/pico-8.php

No clue, I just use a redirect bookmark for threads I frequent

ez

I wish there was a way to change the limitations, but the dev is pretty much against it.

If people can reverse engineer real systems, I don't see why we can't do the same for fake consoles

my understanding of the cartesian system has forever fucked me

I started with gamemaker at a young age and learned that 0,0 is the top left, moving right increase x and moving down increased y. Pixels on a screen. Now, whenever I have to do math where y is flipped I have to correct myself. To make it even worse, Unity decided that y should "up", while x and z are perpendicular on the 2D plane.

is it possible for me to unretard my math

...

Best 3d engine in current year? c++ is fine, I know Unreal is nice but what else is there?

Unity :^)

Yes, but it takes persistence and a flexible mind user. If you go into the industry you'll have to be fluent and flexible in them all, as they are all used in one house or another.

Learn the left- and right-hand thumb rules and just stay open-minded yea?

Might not be possible, I've already been exposed to the minorities

new bread when?


Those tricks are very specific to the algorithm I was converting to compute shaders, and the resulting equivalent cpu version.
So, it'd be quite involved to explain the applications of said tricks, and the specific steps redesigned for each version; in addition to how I ported these steps to the CPU version… as to make the original algorithm more efficient.

CryEngine is good depending on what you want.

Pretty sure it has the best graphics out of Unity and Unreal but also the least amount of support.

Go ahead, I'll be there.

new bread:

unity, cry engine
get unreal though, at least they're jewing you honestly and the shit they give you actually works
people pay to get rid of unity's logos, while others WANT the unreal one
think about it