Amateur Game Development General /agdg/

never made the OP before, last thread was dead

This is the Amateur Game Development General

post progress on your GAMES ok ;>

Other urls found in this thread:

cs.utah.edu/~jsnider/SeniorProj/BSP1/default.html
youtube.com/user/lindybeige
pastebin.com/4EwMEJHt
shmuplations.com/mario64/
kyrieru.com/p/tutorials_19.html
androidarts.com/pixtut/pixelart.htm
androidarts.com/art_tut.htm
twitter.com/NSFWRedditVideo

ok, this is my progress, i know i posted it in the last thread, but the last thread died pretty soon after

You should never again.

Don't talk to me or my game's son ever again

I like this new logo, I'll add it to my game's intro.

I think that's what he's going for, punishing the usual bread bakers for taking the day off.

Cookingdev here
I became disciple of /ck/ and learned much, i shall apply the new knowledge to the cooking system and release a new version this week
if Civ 6 don't eat too much of my free time

That's retarded, you're retarded, and he's retarded.

I keep staring at my engine wondering what to make.

I don't want to work on any of my existing ideas because they're not small enough.

What kind of game should I make? I need a Super Crate Box-tier simple and fun game idea.

An MMO.

That's already one of my game ideas.

Shall I post some Roll feet?

1. For what purpose
2. Is it game dev related?

autism, friend
its an autism so strong that it envelopes anything remotely resembling a personality

Are these threads usually this shitty?

No. The thread starting off this badly didn't help.

This is where we transform into 4chan /agdg/ tier shitfest

Remember this day, and never forget the times you had here before it.

I was about to make a just as/even shittier OP because it's been days.

just one shitpost for the OP and everyone is having a breakdown

i know its my fault, i just didnt realize how delicate the threads were ?

Might as well remake it and flag this one for deletion

Oh boy this can't be good.

They're just being little bitches tbh


Nah, all the people bitching should man up and go back to 4cuck. Nobody even gives a fuck about the OP as long as the right banner is in it. We just had some retarded nodevs derail the thread over shit nobody cares about.

Maybe it'll be fixed if you teach me to do a raycast collision test.

man up or*

What kind of raycast collision test do you need?

I just want to find out if a straight line from player collides with an axis aligned rectangle.

Any guides/discussions/lectures on map generation algorithms you would suggest for someone completely new to the concept?
I want to make a rogue clone.

...

Aren't sprite conflicts fun? Oh if I only could fix them somehow. A tag like something no sprite replacement or w/e would come in very handy.

sure, here is the code im using to test the collision of a line and a plane in 3D:

//has small alteration at the end for the sight testingint get_intersect_2(vector *start, vector *end, vector *vertex, vector *normal, vector *intersection, double *percentage) { vector direction, line_1; double length, distance; direction = vector_diff(*end, *start); length = dot_product(direction, *normal); if (fabs(length) == 0) { return 0; // false } line_1 = vector_diff(*vertex, *start); distance = dot_product(line_1, *normal); *percentage = distance / length; //printf("test1\n"); if (*percentage < 0.0f || *percentage > 1.0f) { return 0; // false } *intersection = vector_sum(*start, scalar_mult(direction, *percentage)); //printf("got intersect\n"); return 1; //true}

this is based off of the function in the BSP data structure tutorial at cs.utah.edu/~jsnider/SeniorProj/BSP1/default.html

Note that it wont tell you if the intersection point is actually bound by a polygon, if you're trying to test a ray intersection with a polygon. you just take the intersect point which gets returned and then see if its bound by the vertices on the polygon.

I can't understand the OP pic. What's going on?

I can understand it just fine, what's the matter?

Video games

VIDEO GAMES

How do you get rid of that nagging voice that is telling you no-one will play your game and why not give up now?

should i post my non-progress?

No one will play your game, and that's why you shouldn't give up. Make it anyways, so the next one is better.

Just tell me I'm being a bitch and to get back to work user.

By making a game you want to play. Then there will be one player, atleast.

Focus on improving you pussy

Are you guys, wizards?

Is this…a fetish for you?

...

textures

give up, that worked great for me

Because the idea that nobody will play your game is only 100% true if you don't have a game in the first place.

In fact it's always 0% true if you do have a game, because you played it yourself to test it.

Wait wasn't the crow powered by Nuclear Reactions?
Why does she need to be in a bunker?
sage for offtopic

Lol can you should give up programming or git gud.

because its an edit of something else

Abandon this piece of shit and get here:

looking better every time. how do you make the maps? have you made your own map editor?

fuck off nerd shes mine

yeah, here is a video of the editor in action

Has anyone tried Godot? I want to make a 2D RPG with it because i'm a cheapskate and i've heard how much Unity sucks.

If you don't want to do anything crazy or, you know, too far from classic RPGs, RPG Maker is retarded easy, and cool games like your pic related were made with it.
Haven't tried Godot myself so can't really say, Gamemaker is easy to use and you shouldn't have much problem making an RPG on it,I mean, the Undertale guy could..

this is pain

I kinda want to make a farming game after I played Stardew Valley and saw how it had some good ideas but largely fell flat in a lot of areas and could have done with the creator playing the last Story of Seasons game.

I'm picking over a design document right now, but the biggest issue is deciding if it's going to be 2D isometric or full 3D. Full 3D is a huge pain in the ass, but I'm also quite good at bulk asset generation in 3D as well as basic competence with rigging. Unfortunately even though I might be better at 3D than 2D, 3D still requires a lot more work. Part of me even wants to combine them by doing 2D isometric with pre-rendered assets as a nice callback to the past but I don't know if anyone will appreciate such an archaic art pipeline.

Anyone looked hard at the Unreal engine deal they have where you can use the engine for free in return for a cut of your profits? I seem to recall that was a thing.

Which parts of stardew didn't you like? And what parts of SoS did you like?

Stardew Valley mining was too tedious due to the combat which felt tacked on and pointless. There are a lot of worthless items good only for selling or maybe a bundle if you're lucky. The dog/cat is useless. SoS cats would gather materials or other items and dogs could be trained to move your animals in and out of their barns so you didn't have to do it yourself. Story of Seasons had crops you could level up and use some of the seeds to plant crops at that level you could then level again whereas SDV crop quality was largely random even with the use of fertilizer. It didn't help that products you make from crops seem to ignore item quality entirely so you get into a situation where you sell higher quality stuff raw. SoS actually had a system where value deflated if you tried to unload too much crap at once which I thought lent things a greater sense of logic. Raising slimes in SV seems to be a huge thing due to the addition of an entire building and an object to turn a bunch of slimes into an egg, yet I cannot for the life of me see a point to it.

It's just a bunch of little issues. I'm not saying it was bad, but I think it could be done better and my desire to do so and irritation at the lack of other games in the genre is really making me consider it

I've been using Godot for almost a year and can confirm it's great. While I've been using it for 3D the 2D toolset is better developed. Absolutely would recommend, alongside Monogame and Love2D.

I think the whole "worthless items" thing is a huge reason why the latest HM/SoS games have sucked, most of it is just feature bloat to me.

I'm not too sure how I feel about the whole level thing either, since it is somewhat grindy, but I guess it's almost a necessity if you want thing's like the vegetable festival and such.

Funny thing about the slime thing is, is that I forgot that even existed until you mentioned it, I completely ignored it.

So lastly are you part of the "comfy" camp of style, or more of the old school style, where you have limited time in a day and you can only do so much in addition to your usual farmwork? Personally I'm more of a fan of the latter, since I think the time management adds a layer of fun to what can be a monotonous grind. Oh, and combat, or no combat?

I'd love to see a version that does this well.
It always bothered me that these games don't really reward efficiency. You can put a lot of thought into planning but when there's no expenses you may just do some strategies where you waste most of the day and just water stuff then go to bed.
It would be nice if a farm was more farm like where you actually live with a large group of farmhands and extended family and manage your food stock for winter.

Time management, definitely

Stamina management too, at least in the beginning. It should be something you can basically ignore after I think two or more years.

Cause there's literally no reason to do it. Slime isn't important, rare, or expensive enough to bother creating an industry to generate it.
And the slimes you toss into the box still attack you anyway unless you get a special ring.


Well it rewards efficiency in that you get more money.

The point I'm trying to make is that there's a difference between being efficient at getting money in ingame time and real time.

Ignore day-to-day, I mean. Heavy use should still require at least some attention


Oh, I get it.

I know what I can do to make another Harvest Moon clone unique

Allow for slaughtering and butchering animals

Seriously, it's not like we actually have to see the blood and guts, why have we never been able to kill animals for money?

This may have been the most aspie I have ever felt in my life. I had to scrap one entire setup due to Photoshop being a hateful piece of shit with special shortcut/hotkey rules), due to which the whole process took 2-3 hours easily.
But I feel it's worth it once I memorized the 5-6 deeper, more rarely used combos.

Maximum exposure to brush size/hardness, undo/redo, and animation frame access. Everything else (tools, modifiers) issecond fiddle.

Somehow ended up with nothing on the top middle key, let's see what to throw there.

Resources:
>>>/agdg/
>>>/vm/
IRC: #8/agdg/ on rizon.net


To repost my post (>>11093934) for any answers because the other thread's autosagging
And in case the thread dies,
Should I just join one of the regional IDGA chapters "nearby"?

I can't fucking decide one what engine I want to use.

I made a game in Unity about 2 years ago, but haven't touched it since, so I've forgotten almost everything I learned. And something about it being the default choice for game deving these days kinda bothers me.

I have a licensed version of Game Maker Studio, but find the UI a little confusing.

Have UE4 downloaded but the UI confuses the shit out of me, I have no idea how decent blueprints are, and I have little to no skills in 3D currently.


I want to make 2D games or 2.5D games until I feel comfortable enough with a tool that I can finally make 3D games. What the hell should I choose?

Definitely not Game maker, then.

I don't hear people using UE4 for 2D games, so it might not be that good for it. Unity and UE4 are the only really good choices if you want to do 3D some day though. Godot is OK but it's not that good with 3D yet.

Do secrets make games addicting. I kinda realized a lot of older games have a shitload of secrets, because you would usually replay the levels like 50 times before beating the game. It would make you feel like a master who knows everything up until the point where you get fucked.

Then you got the ability to save on the fly and now we have no secrets really. Instead we have e-sports, where everyone memorizes random ass details about the game and tries to see who can pull them off better. Things like CS:GO flash/smoke tosses that let you hit other parts of the map and the entire moba genre.

Are there any good places to study melee weapons, and how people fought with them?

lindybeige
youtube.com/user/lindybeige

Fuuuuuuuck yoooooouuuu

pls

Lloyd makes some decent points most of the time but remember that he's usually talking about things from a military perspective, and battlefield combat is very different from what you may want to do. He says that flails wouldn't be very good because they're hard to use and that they pose a threat to the comrades around you, for example, but that wouldn't be an issue if you are some sort of fantasy adventurer and you have lots of time to train and no comrades to worry about.

Also I want to ask, how much programming knowledge does it take to make a game with an existing engine like game maker or unity or whatever? I've no interest in making engines, I just want to make game.

I guess it's time to just suck it up and use Unity.

Like everyone else

Jesus fucking christ I'm so sick of this mentality

BUTTHURT CONFIRMED

christ

christ

Pic related

...

A classic.

...

if you have any work done, post it and gauge interest.

I was posting it in the other thread. I'll post progress tonight after work.

shaders which then get raped by shitty video compression

i really hate it when nobody links that there's new bread in the old bread, how the fug am i supposed to know it died
anyways
someone help me out with this
i'm trying to replace my regular A* with JPS
i found some unity integration of it on github, but the thing was a mess with obvious memory leaks all over the place, because someone thinks he should make a new object every time he wants to move a node 1 unit away, rather than just using the already existing nodes
i initially tried directly changing the original code, but it was just too messy and the best i could do was get a half correct path, and after it, no other path gets generated
so i tried to write the code based on what i had as a reference, but now when i try to find a path, unity straight up freezes
wat do
i don't need someone to write my code for me, but unlike A*, i still have no idea how JPS works, so a detailed explanation on the algorithm would work fine too
pastebin.com/4EwMEJHt

So, /agdg/, I've been stuck on how I want to handle biome blending for a while.

I was thinking of going through each chunk, and first generating each neighbor as if it had existed in that location. Then, blending it based on how close we are to the edges. That way, they'd meet up seamlessly.

I know this would work for the four directions, but I'm thinking the corners won't match up if there's a bunch of different terrain. So I'd need a more complex model than this.

You can do it the same way, but it means that as you approach corners, you wouldn't blend between 2 biomes, but between 4 biomes.

I'm having a hard time figuring out how to represent that, since as it gets closer to the edge it weighs more and more heavily towards the other biome until its a 50/50 split where they meet up in the middle.

Consider you have a merge between biomes 1,2,3 and 4 as such:

12
34

First you look at the x axis and calculate the blended value between 1 and 2, and also calculate the blended value between 3 and 4.
Then you look at the y axis and blend between the values you got from that.
In the middle, each biome should be weighted 0.25x.

Basically this is just bilinear filtering.

I got no time to explain in further detail at the moment, sorry bud.

Blend the heightmap over a distance, spray and jitter the biomes themselves.

You could make it easier by generating the biomes in a set order over the whole map, covering and altering the previous ones.

Depends on how you generate it, and what you're working with of course.

I'd recommend having more than a singular edge chunk for blending (if you have those large differences in the surface level, and can hence blend the heights over a few chunks), or I'd make it more consistently generate the maximal/minimal height for each biome (less to worry about, fewer chunks for a blending zone).
So, what I'm visualizing is that the edges of each chunk can contribute to a "blending biome", which is over the course of a few chunks, and is in itself a contiguous biome between chunks that blends/changes based on the neighboring biomes.
See crappy mspaint pic for example

It's the approach I was thinking about for my system, but I have yet to get there as I'm working on other parts of my terrain system.

Godot 3.0 and its improved render are supposedly coming out in a couple months, more than enough time for to finish a game or two.

fuck no, lindybeige is awful

But did they unfuck skeletal animation yet?

I think unity is being a whore. If my duck isn't at least 0.3 units off the ground (visibly floating) the shadow disappears.

Any ideas?

Oh, I can fix that by adjusting whatever the 'bias' is, but I'm not sure what else I'll screw up in the mean time

I keep hearing this erroneous statement. How exactly is skeletal animation fucked? Video very related.

That's a problem with shadow mapping.
Set the bias to zero and see what happens. The shadows will glitch out as N dot L approaches 0. This is what bias is for, it's meant to cut off the glitchy part.
Another way to solve this is by using smaller, lower range lights so that the shadow depth isn't stretched too thin.

Alright, now tell me how many goats did you sacrifice to import that, and which obscure format was it in.

...

am I a game dev yet

Have you dev'd a game yet?

what am I doing with my life

clearly not the fowl rape simulator we are all craving.

The amazing start of a new roguelike


gods work

I exported it from blender using the better collada plugin that is provided on Godot's website. FK rigs export fine. However, I've found to make a rig that uses an FK rig bound by an IK rig (the IK rig having the actual animation), you need to put a single keyframe from the FK rig into each animation so it knows to use the FK rig when exporting. I put a 0,0,0 translation key on my FK rig's root bone for each animation.

That duck looks comfy as hell


No

I should have done the same a few days ago instead of worrying about things

Looks good but just a head's up: ducks don't walk like that. Rather, they kind of rock side to side. Look up videos. It's the definition of waddle.

Here's some good footage of ducks walking.

Idk why I found this post so hillarious

Is there a better way to structure what I'm doing here? Node IDs are completely arbitrary and up to the writer, but I don't know if there's a better approach to handle player replies to NPC responses.

load it all from a text file - you can structure this kind of thing like a tree, as well, and then use recursion to go through the dialog.

load it all from a text file - you can structure this kind of thing like a tree, as well, and then use recursion to go through the dialog.

No I understand that I can load it from a text file

The problem is that there isn't really a way to distinguish who is saying what. Like it tends to structure "replies" in such a way that I have to pick what both sides want to say.

It's been a while since I messed with it, but I handled it in XML. Each text node had its own id and a set exit node that it would load once the first one was finished and the player gave input.

I also had it set up where there were options that could be set for the player to choose from and each option had its own exit node that would load if the player picked that option.

Again, this is ancient stuff and I'm probably going to rework it since I've become a lot better at coding since I put together my dialogue system, but pic related is a test dialogue I threw together back when I made my current system.

Red circle is the variable that determines whether options are loaded and if so, how many. Because options are set to 0, blue circle is what actually loads. If options was set to a number 1-4, green circle would load instead.

I guess what I'm really asking is if player replies are treated as their own node, or are they conglomerated into the NPC's text for that option? Right now, I just have one node class that handles everything. I could probably break it up more if I needed to.

How do you handle making options appear/disappear, like in the case of holding a key item, or suppressing introductions and such?

In mine, player and NPC dialogue are all handled by the same node class. Above the blue circle from my previous post, you'll see a "CharacterName" tag that I use to specify who is speaking. It isn't pictured, but I also have it set up so I can load an image of the character as well.

Making options appear and disappear, checking inventory and progress, all of that would be handled by functions that run when certain tags are present. For example, between the blue and green circles you see some stuff about EventFlagCheckVariable. What that does is checks a dictionary for the value specified in the tag "TheFirstOne" and checks if the value is equal to 1 (or less than or greater than or whatever I tell it to). If it is, instead of loading the default text, it loads a different textbox. The specific implementation of this is probably the biggest thing I want to redo because it's sloppy (literally the first thing I coded), but the same logic applies. Have a tag or a variable or something in the XML that tells the script that handles dialogue to check something and react accordingly.

Could you modify DialogNode's Text get function to change the node links?

Thanks user. I'll be sure to support them.

try something like this:

struct dlg_node{char *dlg_line;size_t num_responses;char *dlg_response[];dlg_node *response_result;};

...

And you have my congratulations on those quads.

Okay, thanks.
I just kind of started working on this randomly after like 20 weeks of not doing any dev. I'll probably have a fresh mind for tomorrow.

It kind of works, and you can ask about topics or use choices.

i just posted a random sample without explaining it; anyway the idea is that a node should have a string for the guy's dialog, and then a bunch of responses, and then pointers to the nodes that the responses correspond too; so that you can make something like this:

struct dlg_node{char *dlg_line;size_t num_responses;char **dlg_response;dlg_node **response_result;};dlg_interact(dlg_node *n){ printf("%s\n",dlg_line); int response = atoi(getchar()); dlg_interact(n->response_result[response]);}

just pesudo- not working C code, but thats the general idea of how… this way everything can refrence each other with pointers, not with the user defining a bunch of indexes to use…

What I'll probably end up doing is making a DialogNode class that contains all the nodes of the conversation, each with a reference to a DialogResponse object. This would contain the reply string and an attachable script (such as launching the store, healing the player, altering variables, etc).

I don't want the dialog nodes themselves to contain the strings, or at least not in the text files themselves. I'd prefer to make a string table approach which is either byte or short indexed per conversation, because I eventually want it to be fully editable via text files.

Another question.

I can use code inlining to make an anonymous method like so:
Action hello = new () = >{ Console.WriteLine("Hello world!");};

Then, I can just call hello(); whenever I want to. Does anyone know of a way I can put the meat of that function into a text file and invoke it dynamically while the program is running? I apparently need some kind of CodeDOM provider or use the Roslyn library, but I really want it to just work out of the box without any addons

are you editing in real time? if not, there isn't a reason since you load the text files on load time, not run time… i dont understand - i suppose it makes sense if you dont have pointers, to store an index to a big array, but its about the same space in memory to have the pointer… but i guess you cant do that in java, i dont know. Is the issue about how you would parse the text, and its easier for you to make the big array?

I probably won't have any elaborate editing tools, and I find JSON/XML cumbersome to work with. For me, it's much easier to just slap down lines in notepad or an indexed spreadsheet and have it figure everything out it needs

I do everything as plaintext as well… i dont know what JSON even is

i don't think i could help you with anything related to java, i know the basics but i don't like using it

This is in C#, though.

JSON is like XML but more lightweight. It's still a pain in the ass to use because it's so picky if you're not using a generator.

see, i cant even tell it apart from java, thats how little i know

C# was originally designed to look as much like Java as possible to poach developers over to Microsoft's product.

Realistically though, C# is leagues better than Java and just has more secure features and foresight and easier to work with in general. Like, every fucking class/method can be overridden in Java unless you explicitly say not to. In C#, nothing can be overridden without your advanced permission, etc.

I want to make a fighting game that mimics the limitations of capcoms CPSIII board.
I have no substantial prior programming or artistic experience, is this a bad idea?

This is all the frames used by Dhalsim, a single character, from SF2. You tell me.

Is that it?

i'll take your word for it, if i ever had to write in C# i would just put an unsafe{} tag around everything, only use one class, and pretend it was C

CPS3? You realise that the image posted was originally created from CPS1, right?
Here's what Alex's spritesheet looks like in CPS3. It's heavily compressed too, double the pixel count in each direction. At least.

Yeah, I can do this.
I have no idea I would actually put it to use though.

Got a question for programming fags. If you work on your game on your own time can your employer jew you out and try to claim ownership?

It says so in your contract whether everything made in your spare time is his. Talk about it with your employer if need be.

Also, this isn't just if you're employed, therer's plenty of stories of colleges/universities claiming the rights to what students made in their research.

Depends on the contract you signed, especially tricky if there's a non-compete clause in there. I had a contract that stated any IP I made at work was the property of my employer, but anything made outside of work hours was mine to keep, but that isn't always the case.

This is only for graduate students really. I remember specifically because I was thinking about going to get a patent through my school as an undergraduate. A lot of the engineers I talk to say "if you do anything in the labs the school owns it" but the school patent office said "You pay lab fees so you can use the labs, but if you used a +2 million dollar machine in part of the process then it's up in the air." I don't know why graduate students get fucked.


I get the feeling if I work for some gigantic corporation (which is what the signs are pointing to) as a faceless developer they will have something in place like this.

The guy that made the Black Box set for Soldier in TF2 was a modeler at Bethesda. They wanted to sue him for the money he earned from those items on the Steam store but dropped it, either because it wasn't in his contract or because they didn't want the bad press.

We have a new OP image.

In that case it's the same market though where I would never want to work for a AAA developer personally, but I wouldn't doubt jews would be jewing. So now I have to waste a ton of time figuring out whether or not my employer will fuck me over

Would make a good banner

If you talk to your superior make sure you get it in writing, follow up with an email or something and make sure there's a physical copy somewhere.

Not sure, banners are pretty small. Plus /agdg/ is dead, last time I made something custom for that board it didn't get used and that was over a year ago.

Fucking around with shaders for the client. Wanted a little bit of CRT feel without being obnoxious. Can be toggled off if player doesn't like it. Also added resolution scaling.

Any news from the guy making the Fritzl simulator?

is that Elysian Shadows shit just a joke and all the people working on it functionally retarded or am I just a pleb who is missing something. I mean holy shit nigger 10 years for a 2D generic RPG that doesn't even work and they have several people working on it.

Development hell can happen for various reasons.
But for such a simple game made by several people, it's inexcusable.

the fake crt curvature looks terrible without scanlines, bloom, gausian blur. Have you used a CRT any time recently?

What else did you expect from a hipster?

It does have scanlines and bloom though, albeit toned down. Did you view it at full size?


How?

Hi all.
I'm making a 3D game.
I already wrote the engine from scratch.
Focus has moved over to content right now (not much to see yet tho).

I've seen these threads from time to time,
but I've never posted what I'm working on because then what's the point of being anonymous?
If the game eventually becomes a success, the SJW crowd might notice, might get labeled as a Nazi, etc…

…Maybe I'm giving the SJW crowd too much credit tho.
Plus there's a good chance of them attacking virtually any half-decent game that becomes popular anyways (since any half-decent game isn't going to match their worldview)

tl;dr give me a reason to actually post stuff in this thread.

video compression in the webm removed it. I have 5 professional CRT's and I don't think you're getting the look right. Those are the best representation of how CRTs could look.

for the record, the black scan line effect is exaggerated, as it was only found in 240p content as a typical TV/monitor's resolution was 480i. When games used the 240p trick it just had blank data for every other line of pixels, making that black scan line effect prominent. Anything emulating it would be inaccurate if it had the black scanline effect for anything not running at 240p.

my mockup isn't correcting for the emulated screen geometry.

also just throwing it out there, but 4:3 is much better for this stuff. 16:9 is kind of a lame aspect ratio forced onto everyone by shit film companies.

You shouldn't be in this website period.

Post the stuff in the thread, and if the SJW crowd tries to get on your case in the future just remind yourself that nothing you do will please them and you should aim to accomplish your goals for your game first and foremost.

Never sacrifice your ideal game just because some scrawny nu-male or asshole hambeast is going to call you a Nazi and attempt to "bury" you. Time and time again we've seen that when someone just doesn't buy into the bullshit, and shrugs off the SJWs with confidence and finesse, fans will rally behind them. Even if the Autistes in this thread shit all over the game, too, take what you can from the pile of refuse but keep your vision.

tl;dr SJWs will never be happy, but they're not as prominent or effective against you as their bullying mob mentality would like you to think.

4:3 is a shit aspect ratio for general computer use.

Hmm, originally it was heavier with the scanlines but felt overbearing. If I get time maybe I could include the option for none/light/heavy effect. I'd rather it be subtle than an eyesore. The hastily done everything is an eyesore enough already.

the empty scanlines are there for every other line of horizontal resolution in 240p games.


agreed, 5:4 is better for computer use, or 16:10, but 4:3 is best for games.

I'm starting to question the validity of any information you put forward.

it's been a while since you used 4:3, huh? Or anything but 16:9?

I'm not saying I actually want to appeal to the SJW audience.
I'm just not sure going out of my way to pick a fight with them or putting a 'kick me SJWs' sign on my back is the smartest idea, either.


I'm not talking about changing the game's design to appease the SJW crowd (that would have to happen over my dead body), I'm simply talking about not unnecessarily poking them with a stick.
The main thing that gives SJWs power is things like stupid companies that will fire you over SJW outcry.
If this game manages to be anywhere close to as successful as I'd like it to be, I won't need to be employed anywhere once it releases, and so, at least in theory, the SJW then would have little/no power to do much other than throw a bunch of slander and libel around.
(That in and of itself is rather scary, though…)

Then I don't see the problem in posting what you've done. Let's be honest, a company that will fire you because a few SJWs cried out over your game, are not companies you're aiming to be a part of and still keep to the principle of not changing your game design for SJWs. They're simply not compatible.

People love a good underdog story, and people especially like it when you stick it to the Man. It just so happens that the regressive Left and SJW-types are The Man at the moment even if they refuse to realize it themselves.

I don't know how I could live without the room to put things on my screen side by side. Second monitors are incredibly distracting to me personally, and rarely work as you'd want them to when it comes to stuff like full screen applications and graphics tablets depending on the software. Either you've never played a first person videogame or then you're a cyclops without eyelids. 4:3 is mostly good for retro wanking and topdown games.

Mark your own words user, I'm literally that guy who got fired over SJW bullshit (I was falsely accused of throwing something across the office, they asked me "Have you ever thrown something like a stapler?"
They ultimately couldn't prove the allegations,
but I was fired nonetheless.)

Whatever, I guess you guys win.
A peek at a night sky I made in Blender.
(I'll still probably tweak and play around with it a bunch.)
Blender has some weird transparency bug when the object isn't selected, thus why I have the moon-plane selected in this screenshot.

I'm using a 20 year old 15" CRT right now and I'm alternating between feelings of surprise at how good and useable it is and feelings of despair because it being good and useable intesifies the feeling that we are a technologically stagnant species

I'm just taking the piss m8

...

The engine side looks like this right now.
I wrote my own asset export pipeline and binary file format for getting assets out of Blender and into my game engine, so this is actually reproducing a Blender scene inside my game engine.

Very basic/rudimentary visuals right now, since they aren't needed for getting gameplay up and running.
You can't see it in this screenshot but forward/inverse kinematics are already supported in-engine.
Haven't bothered with vertex morphs ('Shape Keys' in Blender) yet beyond supporting it in the asset export pipeline/binary file format but that'll be easy to implement.

You may note the sphere in the distance has no shadow-
I've implemented basic shadow mapping, but haven't done cascaded shadow mapping yet.
I'll get around to it eventually.

The model you see in the screenshot is an old model I made over two years ago, before I knew much of anything about good modeling technique or topology.
I just use this model for testing engine stuff.
I can make much, MUCH better than that now.
I've just started working on the player character tho, so showing that off will have to wait until further down the road.

The engine uses OpenGL for now.
I've been studying Vulkan as time allows,
but time hasn't allowed for it too much, sadly.
I WILL get around to it someday, tho.
The engine runs on both Linux and Windows with a single codebase, I can make a new build of the engine for both OSes in less than a minute.

If you're already getting fired over something you never did, why would you want to bend over to them still? Getting a new job isn't fun nor easy, but it's more fun than living under an oppressive cult, and easier than pleasing an SJW.


What kind of game are you planning to make with it?

let's say somebody has a very deep GDD or "document design" as some would call it, where can he show it on a safe environment? "safe" as in, you show your idea and it doesn't get stolen right away

It's more like I just want to avoid them like the plague…I see your point though.

With 3D game engines, the majority of the code can be re-used for any kind of game, thus why general-purpose engines like Unity/Unreal make sense.
In a similar manner, I plan on maintaining and re-using this engine throughout my career for a number of games.

As for what I'm aiming to make atm, I originally wanted to go for a fighting game, but it became clear pretty quickly I wouldn't be able to handle twelve character models of wildly varying builds in a timely manner all by myself.
I've dedicated time to studying both programming and 3D design, so I can do both well enough to meet my standards of quality, but on the artistic side, I'm generally not at a 'pro' level (particularly in the sense that I can't make stuff as fast as a professional would need to in order to make a living off their art.)
So while I have what I think are some pretty awesome ideas for a unique fighter, I shelved those ideas pretty early on.
I'll get around to getting those ideas out there some day when I can afford to hire some professional modelers to offload the work.

So after dropping that line of thought pretty early on,
I'm currently looking to make a game that's something like a cross between Yume Nikki and 3D Zelda. (That's the best way I can think of describing it easily, at least.)

A game like this is nice on the production side since it doesn't have many constraints and allows for a lot of creative freedom.
It makes for a similar production process to games like Super Mario 64:
shmuplations.com/mario64/

One final thing I want to note is,
I'm looking to make this game with as little dialogue or text as possible.
From my past experience trying to make a game with a grand story, if you try to make a game by starting with a story, the game design has to fit inside the constraints of the story, and the game design can easily turn into a disaster as a result.
It also is a prime recipe for scope creep, because all sorts of things have to be added to complement or complete the story.

I absolutely LOVE games with great stories.
But what I've discovered is that oftentimes the best path to make a game with a great story is actually to start with the gameplay and, once you have that fun gameplay, come up with a story that fits within the constraints of the gameplay you've designed.
This is how the stories of 3D Zelda games are made, how masterpieces like Super Metroid come about, etc etc…

So while this game will have a story,
and I think it will turn out pretty nicely,
it's actually not a priority or even focus for this project,
which is pretty surprising given how much I love good stories.

Looking nice, were there any particular reasons you decided to do your own engine?


Ideas themselves aren't worth much, it's the implementation that counts. At some point (hopefully) the game will be shown publicly and anyone who wants to will steal ideas then anyway. If you really care, make people sign an NDA or something.

but in my design document i go THAT deep into details, like "this weapon does certain amount of damage (…) worst case scenario someone would survive certain amount of time (…) this special training lets you sacrifice generic capabilities in favor of specialization" etc.

...

I should probably tell you to lurk more faggot, but here's a dev's pocket guide to SJWs based on hearsay and experience.

SJWs can not be appeased.
The SJWs are 'give an inch, take a mile' incarnate. They will not leave you alone if you give in to them, they will see it as a sign to push further.

SJWs do not have reasonable standards and demands.
We're talking about people known to declare vanilla romance to be as bad as rape, just because it doesn't involve anything gay or ugly. You can make the cutest, most light hearted thing ever and you'll still be called a monster because it features a boy and a girl instead of being another Undertale.

SJW outrage is arbitrary and hypocritical.
They will often denounce people for one thing, and promote people from their cliques doing the same thing. Remember the tentacle card game thing?

SJWs like to pretend their view is the normal one.
This is the driving force behind their delusions, they aim to convince people that they're purely rational, modern and basically you're a filthy backwards deviant if you don't tow their line. For instance, the CURRENT YEAR fallacy.

SJWs can be sneaky.
In conjunction with the above, SJWs can pose as normal people and present seemingly reasonable concerns as opposed to outright denouncing you. However, keep in mind that nobody with a life would bother you with petty things like that, so if someone is pushy about a trivial design detail, you might be dealing with testing the waters.

Social justice is just an excuse.
This ties in with the first and third point. If you're working in an infested company, you might as well start sending out resumes because even if you remodel yourself into TurboCuck 9000, you will eventually be fired just for having a dick and not being a walking biohazard or not pleasing the office hamplanet, so don't bother. This is probably what happened to you.

Say whatever you want, just get my name right.
Moral outrage is free publicity. If you aren't concerned with the moral implications, you can even game that fact to promote an otherwise mediocre game, and at least a couple developers have already done so.

Life is short.
Do you really want to spend the rest of your life trying to please everyone? It's your game, your personal project. Are you going to let someone else decide what you do in your free time? Especially someone who just fucking hates you and everything you like? You're dealing with madmen here. Keep your head down, and they'll eventually aim lower, until you're forced to bury your face in dirt. Then they have you.


There isn't such a place. Originality is a risky bet in this industry, only quality and depth can discourage and beat copycats. Always assume there's someone else doing exactly the same thing as you, and with the resources to get it out the door earlier.

[…]with a cuck testing the waters.
this is what happens when you go back and forth between unfinished paragraphs

Everywhere is a safe environment because ideas are shit without proper implementation.

But let's hypothetically say that your idea is actually that good that it's worth stealing. Let's look at all the stuff that can happen if your idea ends up on the internet and what the odds are:

If you're into gamedev because you want to make shekels, then you can simply only share it with people you trust, or share it with others under NDA. This is a complete waste of resources and everyone will tell you as such, but if you are that insecure then go right ahead.


I'm guessing that your GDD goes deep into the details in the parts that interest you, but not the parts that actually make or break a game.
Much of a game is not just the game design, but also simply how one controls the game, how entities move around and interact with the environment.
I'm not sure if you made a giant-writeup on how entity movement and collision works, but chances are you haven't gone into detail, nor know how to implement it.

I'll tell you one thing: If you can actually develop ideas that are worth shit, and go very deep into detail in every aspect, then you have the skill of a 10/10 project manager that can easily earn himself a retirement in a decade. But the fact that you go on the internet to ask where you can safely discuss game ideas without them being stolen shows to me that you really don't know what is actually valued in this field, and what makes games actually successful.

Even better than Gamemaker Pro? I need something that will make a 2.5d game like New Super Mario Bros with a lot of documentation.

Definitely not Godot.

Thanks user.
First, it's worth noting there's legitimate justifications for re-inventing any sort of wheel:
1. To learn how to make a wheel, and come to understand the structure of a wheel.
2. To improve the wheel/make a better wheel.

In my case, I would argue it was some of both, although mostly #1.
Around 2013, I decided it was time to learn 3D.
Rather than study both 3D programming and design, I decided to study just 3D programming first, and would learn 3D design later on.
So I read some Japanese documentation on the PMX and VMD model formats and wrote a simple 3D engine that animated MikuMikuDance's PMX models with VMD motion files.
Then I got employed at a company…
While I was working there, I studied 3D design.
Knowing how everything 3D worked below the surface first made learning how to design 3D content much easier.

I think Unity and Unreal have started kind of open-sourcing their stuff to some extent for users of their platforms, but at any rate, relying on a closed-source engine for something as complex as 3D is a bad idea imo.
You also end up having to pay them money to sell your game-
Why pay Unity/Unreal people money so you can remain stupid and ignorant on 3D stuff, the very stuff you're trying to make?
While Unity/Unreal/etc. tend to be pretty good about cross-platform nowadays, that might not cover future platforms if they ever go out of business.
I wanted to use an engine that I could use for my whole career, no matter what platform I chose to develop for.
Also, in using Unreal/Unity you end up learning their particular UI, and if Unity/Unreal development ends, or doesn't support a platform you want to dev for, you'll have to learn a new UI.
Same deal with programs like Blender, but there it's fully free and open-source, so someone can always pick up where development was left off.

Finally, there's some other reasons that might seem small but can be pretty important and save you headaches.
If you write the engine yourself, you know exactly what's going on under the hood, and unless you're an awful programmer, you won't run into any unexpected behavior that you can't fix yourself.


lol, thanks user.
I already know these rules more or less, but I think your last point under "Life is short" gets to the core of the matter for my particular case.
Very good point on the end result of 'keeping your head down'.
I'll keep it in mind…

Sorry I meant your reasons in particular, not in general but thanks for elaborating. I especially agree about learning Unity/UE. Personally I think people new to gamedev should focus on their own little engines to understand how everything interacts, rather than trying to learn an IDE, language and APIs all at the same time.

I'm doing my own shit too - on top of the löve framework client side and luasocket/enet server side - and really enjoy having so much control. Of course that doesn't compare to doing a 3D engine.

Hey, faggot.
If you can write an engine, you can learn how to structure a fucking paragraph. Giving each sentence a new line makes you look like a 12 year old writing Club Penguin fanfiction.

Finished a rough jump animation now too.

when he's at the top, his knees shouldn't be bending
bend knees to jump, jump with knees straight, and bend knees when you're landing

Your hidden caption shtick is not working. I have to squint to barely make it out.

/monster/ dungeon crawler is pretty much complete gameplay-wise. Needs more items but game can be finished. Now I'm just waiting for artist to finish the sprites 50% complete and I'll have to find some degenerates to write the smut.

That's the point.

...

Forgot the ox that a calf he was.
You rant about people learning 3D by using engines, yet you did the exact same thing at work.
Of course it's easy for you now, and since you've sunk time into making your engine (which isn't even finished), you have no reason to use another one now. Still, don't shit on thousands of man hours of saved work because you've just learned how to transform a model. It just makes you a giant faggot.
Also, free software doesn't work the way you think. Most free software is made by dedicated developers, and "picking up" a project usually involves cannibalizing the old codebase to build something new, rather than iterating upon the old thing.


The gamma trick doesn't work anymore.

Shouldn't they though? Since the momentum slows down and the rest of the body catches up at the height at the jump, before gravity pulls them back down.

i think it depends what you're going for
what i'm imagining, is the kind of jump where you only use your feet, knees don't bend
the one with more energy is the one where the knees bend

he should atleast extend his legs again before he lands to absorb the blow from the landing

Sadly, the barrier of entry into game dev is tall for most types of games almost no matter what (2D RPGs are probably the most notable exception?) At the point one forgoes something like RPG Maker and commits to learning programming, there's a long road that lies ahead for that dev.
Forgetting the barrier of entry and thinking long-term, why learn the UI of an IDE when you could learn how to use the command line tools (compiler/linker/etc.) running behind that IDE? That's what led me to switch from Windows to Linux back when I started learning how to program.


lul (jokes aside, I'll keep it in mind)


Actually they used Blender where I worked, which was unbelievably lucky for me as I met people who worked on films like Big Buck Bunny and Sintel right as I began studying 3D design using Blender. They weren't doing anything special as far as actually making games though, sadly.

Plenty of people use Unity/Unreal/etc, and I think that's perfectly fine in many use cases where people actually know what they're doing. All I'm saying is that Unity/Unreal isn't going to magically save you from programming nightmares if you don't know what you're doing. Just like how Java won't magically save stupid programmers from introducing bugs, even bugs like memory leaks and crashes that Java people like to think they're safe from.

Agreed in regards to FOSS software, most people don't learn to adapt to a code base, they tend to adapt the codebase to fit their own standards.

He does, though I see now it doesn't come across as well.

Are there any more modern 3d games that have dialogue but no voices acting? Like OoT, but maybe more towards 2005-2007 graphics? I can't see how it could be done without looking akward as fuck.

Well fuck I don't feel like devving today

i wasn't gonna dev today because i've got homework
needless to say, the homework hasn't even been started yet
the same will probably happen in the next few days

a-at least I'm not cooking user

You will never make it

And thus Hitlerduck was born.

why are those rocks/trees not smooth shaded? I hate those (((low-polygon))) style,

thanks for the advice, friends, but unfortunately I bought the duck off of someone and can't import the fbx into blender without bad things happening


it's ((artistic))

nigger you could have easily modeled something that low poly

C'mon Jew, you can afford the third ones

oy vey but that would cost him 10 cents goy! how is he supposed to pay the bill? Gevalt it's 12 cents too much!

That duck needs to cover his shiny shame.

Pillars of eternity. Persona 5. Literally any RPG with a limited budget that wants to tell a story.

working on lightmaps, right now i have a funny graphics bug with my stuff

At least you're not my hamfisted code

why are you still doing it like this jesus christ

Jesus user, please don't put that in the final game.

improvements

actually got this part to work

testing with random noise as my lights

Looks like the lightmaps are a bit too small in width on the columns. Compare the texel size to the ones on the floor and you'll see what I'm talking about.

Because I just woke up and haven't redone it yet. Besides, this is just the data population, it's not the actual logic part

yeah i know, im working on it right now

i get what you mean

...

How do you modify player stats when equipping/unequipping items or leveling up or walking on ice or swimming in water?

There's so many things that can modify your "stats", but you need to be able to revert them properly.

For example if water divides your speed in half, you can't just multiply it back up, especially because switching items (and changing your speed by say +5) while underwater would cause it to increase your speed by a wrong number while multiplying. Then there's floating point inaccuracy problems that would cause your stats to be slowly distorted.

What's the ideal programming design for stat modifiers?

a priority list of modifiers

recalculate them every frame, or at least when shit changes

Crude as fuck but it's working

This is basically my main concern. Because when you swim in water or walk on ice, you'd have to loop through and check the modifiers every frame. And doing that every frame for every single stat for every single mob seems a little counter-intuitive.

If there's multiple water types (for example water and oil), it would also become pretty inconvenient to have an "inwater" flag or something for all of them.

Not saying they're bad choices, but it feels like there has to be something better.

I don't know about ideal but in the past I've done it like this:
- When you equip an item, apply stat changes
- When you unequip an item, reverse stat changes
- Keep track of original/base stats and use these for saves
- When loading from a save, apply these equip stat modifications so that if you change values between sessions/versions you don't run into inaccurate stats
- Keep a buff/debuff array/table for temporary effects, have these work in a similar manner with an on application effect and on removal effect. In your example, when you enter water add a debuff that specifies speed gets modified by 50%. When you exit water, remove that debuff. From here it's pretty easy to add support for things like stacking buffs/debuffs. You also avoid the need to constantly check things and it lets you reuse effects for multiple things (water and tar might both have a slowing effect for example).

For handling unique item effects/procs I'd have the item include functions for triggers to activate, which gave a lot of flexiblity, like:

exampleThornyShield = { health = 50, armor = 20, strength = -5, procs = { onAttackHit = function(owner, target, damage) owner:cast(SpellID.thorns, owner, target) end, onDamageTake = function(owner, target, damage) target:takeDamage(damage * 0.1) end }}

Then in the attack resolution I could just check if the player has any items with onAttackHit and if so call it. Not sure how that carries across to other languages.

Terraria recalculates it every frame. It's shit, but it works.

Doing it every frame seems wasteful to me. Across an entire play session, the number of frames you're changing an equipped item is infinitesimal.

You can't learn Japanese

shit, wrong thread.

y-you too

...

I didn't think of separating equipment/stat modifiers from temporary modifiers. I think I'm going to do that, i.e. have essentially 3 versions of stats. One for defaults which never change, second for stats modified by equipment and stuff, and third which is the second + highly velocious modifiers such as "walking on ice". That way you would only have to check or calculate the temporary modifiers every frame, and the second stats would be completely dormant until you switch items.

That unique weapon function seems pretty good too. I was going to write the entire attack function separately for unique items like that, but your method seems much better.

Thanks bruh.

...

That's why I'm sticking with C#! Take that, establishment!

I love anonymous functions

I use them to make nested methods.

what the fuck is this, haskell? get back to virtual functions you double nigger

Guys… I don't think my first venture into the world of markless motion capture was very successful…

I remain optimistic though

:^)

top work, post more

doesn't really matter it's a very easy solution and it doesn't cost any real performance issues
This is one of those premature optimization things
It's really not wasteful cause it's barely anything at all
Going through 1 list of < 100 objects is pretty much nothing and you shouldn't even think about things like that being wasteful
You should only consider performance if your game actually runs like shit
Then you get out the profiler and optimize

...

Actually, anonymous methods were implemented as a first-class language feature to facilitate expression trees, improve delegate usage, and basically enable LINQ (the meat of C# 4.0) to happen. Working with collections is fucking easy now.

9/10 ship it

Well it took what, 15 minutes to find a better solution that I would have initially gone for. I think I saved time by doing this now than potentially refactoring it later when the entire game is depending on it.

Still better than Skyrim

Where do I go if I want to learn how to compose music if I have little to no background in it? I want to make something like the DS Etrian Odyssey OST, but I'm not sure if I use a program for that or some expensive rig.

Just make it a horror game and your horrid animating would perfect.

Hey, it worked for Scott Cawthon.

actually it's probably not a better solution
The best solution is always the simplest which is to say the easiest to understand for a person
More complex code always makes bugs and errors more likely as well as making them harder to find
This is why you should only optimize when you absolutely need to and always strive to write code that is a simple as possible

I disagree and think it's more of a design/approach problem and I don't see how my suggestion is complex at all.

This is still very simple to understand for me. Especially because I'm essentially separating 2 somewhat different kinds of things from one another, I might even argue that it makes it easier to understand. Plus removing unnecessary calculations will make it tickle my autism less.

I just think setting the modifiers every loop is generally less error prone and probably requires less code
I just said it because you initially said it was wasteful which it really isn't
Anyway it's pretty hard to talk about this since i haven't seen any code at all and don't even know what your other solution is.

Tomorrow, once I find some time, I will continue my research into this arcane art. I'll post progress. Hopefully I will get results resembling something human…
I do want this to work, not just be nightmare fuel
And the attached webm was our first try at this. As you see… it did improve


Oh, I can get a lot more where that came from
The rendering takes some time, though


Imagine my brother's horror. He was my mocap actor. He was like "that's cool" when the T-pose worked in the animation and his legs started to move relatively closely to the original capture.
Then, as his avatar's limbs snapped, he did as well.


I guess everything can be a fetish…

more debugging

Worst case scenario, it's creepy and good for 5 minutes of laughs, and you can call it BAD MOCAP SIMULATOR 2016 and publish it to Steam for $2 and sent a free copy to Markiplier and get infinite money forever

sight test works kinda sorta

You're almost there, nigga. At least at this stage you don't have to deal with the FUCKING SEAMS HOLY SHIT.

Pad islands and dilate.

I already pad individual lightmaps inside atlases, if that's what you mean. I'm talking more about the seams in between brushes, and to my knowledge the only way to deal with that is use one lightmap for multiple surfaces.

Can't you just light an extra 'virtual' luxel around the seam?

That actually might work. Let me try.

Can you not just have a separate dialog file and iterate through it with a loop to add to an array?

Just remember to drop invalid ones.

Well color me surprised. The college I went to had tons of ducks on campus and I could have sworn they walked different. I guess his animation is good enough.

This actually works really well, thanks.
I still sometimes get seams if I continue to use my incredibly smart and innovative technique of applying 3x3 box blur to lightmaps to get softer shadows, though, which is not surprising.

Why would I do that? C# provides a number of file IO functions in such a way I dont need to touch iterators myself. The external file is not the problem anyways.

I have a set of dialog nodes. But they shouldnt contain the strings (or refs) themselves because of duplication. How many conversations in Baldurs Gate had an option "1. Continue"? Think of how many "reactions" and paths the dialog could take etc where it shows or hides or filters sone options. It needs to be abstracted to avoid duplication

How could I define - cleanly - nodes, responses, scripts, etc from a simple file? No, it needs a fair bit of forethought in order to work right. It isn't a simple text dump, especially when strings have tokens in them to get outside variables. Scripting is likewise essential to the system and I havent found an elegant solution to that either

I don't know anything about c#, but it just seemed like having dialog files to loop through would be easier, and would be a little bit faster to determine what X dialog results in Y response/script. I'm just a script kiddy so feel free to disregard my input.

what system did you use user?

YEAH I DID IT WOOO

Nice

Doing some pixel art for my game,

Here's the beginning of a farmer character next to my blue dress brunette qt3.14

Also below is my walk cycles for the girl character tho I think the up cycle requires a bit more work.

Pls bully respectively.

Feck, wrong image.

>tfw I realize my intended main antagonist is a literally a fucking smug monster girl.

Did you plan for the fugging of said smug girl?

No.
but now I'm starting to see a bunch of femdom elements in how she manhandles the player

>kyrieru.com/p/tutorials_19.html
Consider reading up on this tutorial. Though it's designed for sidescrollers using an animu style, it covers a lot of the basics that beginners trip up on a lot.

The artist makes porn, by the way. Enjoy the porn.

>androidarts.com/pixtut/pixelart.htm
>androidarts.com/art_tut.htm
This one is basically an extended version of the above. He's also got an art tutorial, so I'm linking that as well (I find it to be generally useful)

SEND HELP

This is really helpful! I appreciate it!

If I could somehow turn the time I spend playing games into making my game I'd be halfway fucking done by now.

I find using music as a way to put yourself in dev mode is useful.

This applies to everything for everyone. You could become anything if you stopped being lazy and started actually doing it a lot.

Those that do X thing do it probably because they love doing it, not because they wish they could do it.

Hopefully I can post the game late today to test in prep for tomorrow. Shit done yesterday:
- Attack animations for each class.
- Events pushed from server which handle things like attack hits, skills, entering/leaving sneak, etc.
- FX animations, mostly driven by these events.
- Minor screen shake (can be turned off).
- Skeleton minion animations.
- Raise Dead skill for Necromancer which summons a minion which follows master's cursor and deals damage on collision. Uses a bit too much server CPU right now so will have to profile later and see how I can adjust or will have to limit.
- Server now pushes actual velocities after collision resolution, so clients no longer jitter when bumping into each other.
- Fake z-axis for drawing clients and skeletons.
- Started hunting for some music/SFX. Torn on whether I want cheesy music or more serious.

did you intentionally try to make it look like it's on a old CRT tv? with how it's distorted in the middle?

Or am I just crazy.

Yeah there's curvative and faint bloom/scanlines which can be toggled on/off.

TArray neighbours ={ cell + FVector2D(0, -1), cell + FVector2D(-1,0), cell + FVector2D(1,0), cell + FVector2D(0,+1)}; for (FVector2D v : neighbours){ if (v.X < 0 || v.X >= fieldRes) neighbours.Remove(v); else if (v.Y < 0 || v.Y >= fieldRes) neighbours.Remove(v);} return neighbours;

This is supposed to get the four neighbours of a cell in a square grid (down, right, left, and up respectively). It then removes any cell that ends up outside the bounds (and therefore doesn't exist). For some reason, when the cell in question is (0,0) (bottom right corner) it will return (1, 0) (left), (0, 1) (up), and, incorrectly, (-1, 0). I've tried printing it, and sure enough that function returns those 3 cells, even though one of them has -1 as x value.

What the fuck is going on? It's a simple float < 0 check. Also no coordinate other than (0,0) does this (e.g. (0, 5) which would also have a (-1, 5) neighbour removes said neighbour from the array before returning it as it should).

Reposting because the formatting fucked up.

Nevermind it fucked up again, oh well it's readable.

if the node is cell is out of bounds, isn't it null by default? so you can't actually get it's x/y coords if it's null

Maybe it's related to modifying the list while iterating over it.

doubled the resolution on the lightmaps, now its much nicer to look at

it's still to rectangular
nigga, make the resolution something reasonable

i don't think you should be using else there
it should be
if (v.X < 0 || v.X >= fieldRes || v.Y < 0 || v.Y >= fieldRes) neighbours.Remove(v);
none of them can be out of bounds right?

you can fix that with bilinear filtering, however it creates so many artifacts that it looks worse

ideally, you fix the artifacts and use it, but i need to fix them first

...

The cells aren't actual objects, the whole grid is just a vector of vectors containing integers, so it's all done mathematically, no objects/pointers/references/classes/whatever.


Yeah was just thinking that may cause a fuckup even with range-based loops, and sure enough that was it. Fucking hell didn't even think about it. Thanks, might have been stuck looking over this shit for hours before I noticed. This isn't even the first time it has happened, now that I think about it.


Yeah I just split them for readability since I changed it up a couple of times to see if it was some trivial shit UE4 wasn't getting right. Now that it works I'll merge them back.

forgot to add, making the resolution even higher means far higher compile times and load times for the map, rendering this map with a twice as big lightmap made the filesize much larger as well


shadow volumes are harder to implement and have less returns since i dont have any 3d models. I do want to have something like that in a future engine, but for now i am not trying to implement all kinds of complicated stuff at once

just make the lightmaps static, compilation time shouldn't matter if you're baking things

That makes sense.
Creative's depth fail patents are a prime example of why software patents shouldn't exist.

they are static, i know it doesnt matter too much, but i now have to load a 3MB map instead of a 300 kb map


it does look like fun to implement cool shadows like that, and i didn't know about the name of that technique before, so thanks for mentioning it to me

Realised I'm a dummy and could save extra server CPU by lowering updates per second. Clients get told server's logic tickrate and can interpolate from there. Each skeleton/client takes around 0.16% CPU now. Could maybe lower it further by telling skeletons that collide with a skeleton from same master not to calculate collision for a few updates, to reduce CPU impact of them huddling up.

It's also known as Carmack's reverse. Also, how come your lightmaps are that huge?
The bleeding artifacts from neighboring lightmaps in an atlas can be fixed by surrounding each with a 1px border, each pixel of which has the same value as the closest luxel.

oh, well this is going from a map with absolutely no lightmaps, to a map with lightmaps. really the issue is that i am not compressing the map files, so imagine putting a bunch of uncompressed 8bpp images into the file. They're actually not that big.

Thanks for the tip, i'll have to experiment with this!

You could just export them to the same format you're using for textures.

Wasn't Carmack's Reverse kinda shit for maps that aren't predominantly dark? That would influence level design more than user might want.

that's more complicated to do, the simplest thing is to LZMA compress the whole file.

Shadow volumes are shit for open spaces and area lights in general.

FUCKING OVERBRIGHTS
This is actually starting to look somewhat like Source.

how do you get rid of all the artifacts? my lightmaps look like shit right now because of it. if i turn on bilinear filtering it looks even worse.

for refrence; the lights look really bad right now. my code for deciding what the lighting level should be is:

vector light_vertex = v_list[i][j]; entity *tmp = e_root; const int max_range = 32; const int max_shadow = 200; const int sky_light = 25; lm.levels[i][j] = max_shadow; while (tmp) { if (tmp->type == ENT_LIGHT){ //printf("testing tmp %f %f %f; %f %f %f\n", tmp->position.x, tmp->position.y, tmp->position.z, light_vertex.x, light_vertex.y, light_vertex.z); if (bsp_sight_test(&light_vertex, &tmp->position, root)) { int range = (int)distance(v_list[i][j], tmp->position); //printf("range is %d\n") range = range < max_range ? range * (max_shadow / max_range) : max_shadow; lm.levels[i][j] = lm.levels[i][j] < range ? lm.levels[i][j] : range; } } tmp = tmp->child; }

I do this , then when I generate the texture coordinates for the quad's vertices I make them match the "inside" of the lightmap, excluding the border, kind of like this
u0 = (mx + 1.0) / ATLAS_WIDTHv0 = (my + 1.0) / ATLAS_HEIGHTu1 = (mx + mw - 2.0) / ATLAS_WIDTHv1 = (my + mh - 2.0) / ATLAS_HEIGHT
where (mx, my) is the position of the lightmap inside the atlas (in texels) and (mw, mh) is the size of the lightmap including the border.
You can notice that in the first pic I posted the "virtual" luxels in the corners are invalid, because there's nothing beyond that surface, thus they're black and bleed into the main lightmap. In most cases I don't mind that, though, because it gives a pseudo-AO effect, but when it's near the center of a lightsource it's very noticeable.

Oh, you mean this kind of artifacts. These happen mostly because of precision errors and related shit. When you check for visibility, raise the light point a bit over the surface, like
raised = light_vertex + normal * 0.001
Also, in your sight test function, when you split the line into segments when it crosses a plane, move the resulting split point a bit towards each of the endpoints when you recurse into the child nodes, like this:
...v = intersect_plane(a, b, node.splitPlane)na = v + (a - v)*0.0001nb = v + (b - v)*0.0001if a is in front and b is in back return bsp_sight_test(a, na, node.front) && bsp_sight_test(b, nb, node.back)else if a is in back and b is in front return bsp_sight_test(b, nb, node.front) && bsp_sight_test(a, na, node.back)...

new bread tbh

but were only on page 6

okay, i started doing this kind of thing, i just havent cropped the texture yet so it can blend correctly


i got the sight test function from the tutorial, i understand the code conceptually but i wouldnt know how to make modifications or write my own versions of it. i looked at my code and it seems to be doing the same thing…

I am raising the light point over the surface exactly the way you're showing there (or else the sight testing wouldnt work) but i still get weird stuff that i dont fully understand. however, i think once i finish this part with the borders it will look much nicer.

Aren't we authorized?

we are, at page 14

Sorry then.