d79eb7 No.16418016
BrainFucked edition
Brainfuck code to generate the thread image https://pastebin.com/H4K5H4BK
Resources
>>>/agdg/
>>>/vm/
>#8/agdg/ via irc.rizon.net
>Dev resources: http://8agdg.wikidot.com/resources
Links
>Wiki: http://8agdg.wikidot.com/
>Beginner's guide: >>>/agdg/29080
>Previous thread: >>16349623
Announcements
>QUARTERLY DEMO DAY SCHEDULED FOR May 5th (05/05) less than a week away!
>Please contribute to the wiki if you can
37afb7 No.16418145
God I should get someone else to write the kernel to my battle system. Blackpilled af from constantly failing it.
d79eb7 No.16418173
>>16418145
What exactly are you trying to make, and what went wrong so far?
d7b1b3 No.16418174
>>16412636
>But I figured I couldn't make it as good as Tyrian, so what would even be the point?
The point is to have fun making it. I'm a nodev, and will probably never strip that title, but hot damn I love making dumb, incomplete shit to look at for a while.
>Your ships look nice and sterile.
Discovered this style a while back where you just unwrap faces to a tiny palette, saves tons of time and looks clean and effective, especially when you use simple normal maps to compliment it. pic related are a couple of times I've used it
>Is that actually going to have complex management, or is it just a vessel to serve another kind of gameplay up, like FTL?
Tldr; kind of
This game won't get finished, but here's the theory behind it anyway.
The game is built around the crew, it will try to get the player to be invested in the lives of the crew. The game is kind of split between three parts: An idle section where you build sections of the ship, delegate crew positions, pick up basic missions from planets and just kind of watch your crew do their thing autonomously. A landing party section where after gearing up selected crewman you do things on space-stations/planet surfaces where the combat is turn based and revolves around cover management. And a battle section wherein the positions and abilities of the crew aboard the ship directly influences the ability of the ship in combat. I hate analogies like this but if I had to compare it to other games it would be sims meets xcom meets ftl The plan is to have things like air and power management, but the real complexity will be in the crew rather than their environment.
9e1a5f No.16418274
>agdg dies
>I become productive after a months long hiatus
Coincidence? I think not
125681 No.16418353
So what are the projects currently?
000000 No.16418387
Reposting from previous thread in the hope that some anon who knows his way around godot can answer:
>try to make a snake game on godot to ease into gamedev
>make one tilemap for displaying the snake/food and another for displaying the walls
>for now using a hardcoded array to define the level, stored in the script of the snake tilemap
>set other tilemap as child so it can inherit the array
>script the wall tilemap to automatically fill the playing field with walls taken from the array
>can't access array
>after some research manage to fix it by changing the inheritance of the wall script from the wall tilemap to the script file belonging to the other tilemap
<the set_cell() method in the wall script works with the correct tilemap without needing any prefixes
<the tilemap isn't mentioned anywhere in the code
What the hell? What exactly is the difference between scripts belonging to different nodes when the contents are identical?
622cc5 No.16418538
>>16418387
I'm confused, post a picture of your node setup.
d106e9 No.16418560
>>16418353
I'm still technically working on Autumn Willow (that puzzle game) but it's been so slow and lazy I might as well be a nodev at this point
1b6efe No.16418616
>>16418353
Demo Day is 6 days away. We will all find out real soon what all the lurkers [spoilers]including myself[/spoilers] have been up to.
125681 No.16418626
>>16418560
What's the puzzle about? I mean, mechanically speaking.
13ae87 No.16418628
>>16418616
Good job, newfag, you really nailed that spoiler in spoiler
622cc5 No.16418633
>>16418353
Still inching away on my stealth game. It's been 2 years
2304ef No.16418639
>>16418628
spoiler inspoiler
2304ef No.16418640
2304ef No.16418643
>>16418640
oh wait, it was obvious
13ae87 No.16418647
>>16418639
Good job, faggot, I smug at you.
>>16418643
Wrong.
2304ef No.16418669
>>16418647
Tell me your secret.
1b6efe No.16418677
>>16418628
>calling me a newfag when I do the 8chan part of spoilers correct, but the part that's identical to cuckchan wrong
>>16418669
I literally spoilered how to do it in my previous post anon. Why don't you guess?
13ae87 No.16418683
>>16418669
Two asterisks on both sides, like a normal spoiler, and cuckchan-type bracket spoilers in between them.
Now just like make game.
2304ef No.16418684
>>16418677
>>16418683
I don't deserve this power.
fcf82c No.16418694
>>16418684
can'tyoujustuse4asterisks?
1b6efe No.16418697
>>16418694
No, because the second pair of asterix will close the first pair, ending the spoiler.
000000 No.16418719
>>16418538
Alright, I slightly misunderstood how "extends" works, I had assumed it meant inheritance of a specific object instance so that methods that change object properties unambiguously change the one instance that was inherited from. Apparently it inherits from the general object.
Now my question is what makes object specific methods apply to the specific instance the script is attached to.
I don't think it's relevant any more, but here is the basic setup:
Node2D
L__TileMap (Tiles of snake, background and food)
L__TileMap2 (Tiles of walls)
Attached to TileMap is a script that extends TileMap and, among other things, contains the hardcoded array with the level layout.
Attached to TileMap2 is a script that uses the array in the above script to set tiles in TileMap2 to draw walls. This is done through the set_cell command.
I needed to replace the "extends …" line that was automatically generated with "extends res://locationoftheotherscript.gd" so that the script could use the array from the other script, so I was confused why set_cell worked correctly without any prefixes despite TileMap2 I didn't read that the line I changed was "extends TileMap", not "TileMap2" not being mentioned once in the code.
000000 No.16418728
>>16418677
newfags can't nest spoilers
fcf82c No.16418752
>>16418697
dudeIamusing4asterisks. Itworks
13ae87 No.16418756
>>16418752
But notice how each one of your words is a separate spoiler and requires to be hovered over individually whereas mine shows several sections with one hover and only hides the second layer. Does that make sense?
fcf82c No.16418758
>>16418756
I noticed shortly after my post.
622cc5 No.16418760
>>16418719
Extending your TileMap script for your TileMap2 script is not the proper way to do what you want. Variables in gdscript are public, so you can just use get_parent().walls_array in the TileMap2 script to access the array in the TileMap script. The reason set_cell worked in the TileMap2 script is because your TileMap script extends from the base TileMap class, which is what defines the set_cell method. You should probably change your TileMap2 script back to inheriting from TileMap (the built-in class, not yours).
000000 No.16418786
>>16418760
>Variables in gdscript are public, so you can just use get_parent().walls_array in the TileMap2 script to access the array in the TileMap script.
Thanks.
>The reason set_cell worked in the TileMap2 script is because your TileMap script extends from the base TileMap class which is what defines the set_cell method.
That's not what's confusing me. It's obvious to me that the method set_cell would be inherited from the other script that extends TileMap, but why does the method affect the TileMap2 instance?
>You should probably change your TileMap2 script back to inheriting from TileMap (the built-in class, not yours).
That's probably true, but doesn't really answer my question.
160b9a No.16418792
13ae87 No.16418796
File: 5ae1a5ddf31cdb2⋯.jpg (Spoiler Image, 589.81 KB, 782x876, 391:438, 6bb0a547a10dbdc10e1794c4ea….jpg)

9437fa No.16418817
UIs working with shortcuts, not really happy with the sprites but they work as placeholders. Got them working with some work-around code because texture buttons are broken.
>>16418353
ANUBITEK reporting in, stealth platformer RPG. Hoping I can make demo day!
>>16418796
Please stop posting porn in the >>>GAME DEV<<< topic.
160b9a No.16418837
125681 No.16418839
>>16418817
Like Stealth Inc.?
59bde0 No.16418890
>>16418786
If a method is called without prefix it is assumed to work on the node the script is attatched to and is basically the same as self.set_cell(). If the script that calls set_cell() is attatched to the TileMap2 node then that is what is affected.
6d1ac3 No.16419044
>>16418353
I'm working on Trigger Control, a stealth game with a focus on realistic firearm handling and modeling of computer systems. As of late I haven't been working on it as much as I would have liked, but I am still working on it.
ba3bf9 No.16419085
>>16418353
codename waifus, which we showed last demo day, won't make it this time around.
The game went through some massive redesigns and was reprogrammed from the ground up. We went from puzzle/action hybrid to pure shooter.
There are two reasons for why we can't make it. Firstly our artist got a job and I'm still waiting for those revised character models. The second point that is holding us up is the AI. I looked at a variety of approaches and initially settled for GOAP (Goal Oriented Action Planning - the AI tech that the original FEAR pioneered). However, none of the readily available GOAP implementations for Unity satisfy me completely and it just so happened that some dude released an open source HTN implementation for Unity. HTN (Hierarchical Task Network) is a more modern approach than GOAP, which solves some of GOAP's inherent problems. The dude said that examples will be ready by the end of the week so I'm waiting.
I don't want to jump into his API blindly.
a239c7 No.16419125
>>16418353
reporting in I'm fixing all the issues described during my last DD outing, like performance issues. if I introduce any new features they will likely be as buggy as the last time
also still involved with this >>16419085
>>16418633
I'm very happy you're still on it. Got anything new to show? tfw haven't updated the wiki in ages
>>16418174
you need to post these more often.
d49774 No.16419143
>>16418353
I'm still playing around with cubes and learning how to do physics
125681 No.16419205
In my case I am still deciding on what engine to tackle (Godot or Unreal) before considering development of some templates, probably a shooter with some pretty unbalanced stuff inspired by SAO-GGO (minimal RPG elements affecting player loadout and attributes), if anything basic mechanics will come first but I also need to implement some player avatar customization to apply the gimmick.
000000 No.16419316
>>16418890
Thanks, that does some amount of sense. Is there a quick way to check where a script is attached to, or is that something I should clarify via filenames and comments?
d106e9 No.16419324
>MoM anon isn't even here to shill their own game
>Got DaftPatriot to do a bunch of art
Huh.
c33480 No.16419359
>>16419324
aw hell yeah, proud of the mom man
>first YT video was 4 years ago
goddamn, where does time go
6c204b No.16419364
>>16418353
>start working on an FPS idea I had for some time
>write own movement code for the sake of learning
>works on surface level but doesn't allow for good control in the air
>realize I have to discard most of it and rewrite
>haven't touched the project in a week
45b97d No.16419413
Had some free time thanks to easter break. I split the player's animation sheet into several body parts to allow for customization in the future. Also there's a proper ui now with buttons; equipment and inventory are more or less complete with dragging, dropping and swapping. Equipping works and appears on the player but I need to selectively disable body parts that get in the way and properly animate the equipment sprites.
8526c4 No.16419554
>>16419413
So, will it be called Dragonscape, or Rune Quest?
215d14 No.16419556
>>16418353
I'm doing Ludum. Theme was pretty shit but I still had fun, About to turn the game in, will probably host it on itch.io of any anons feel like playing it.
d106e9 No.16419557
>>16419554
>Runescape with a top-down adventure feel like a GBC game
Holy s hit do it
125681 No.16419572
>>16419556
What is it about?
45b97d No.16419573
>>16419554
The 'game' is a generic rpg to test the engine on and the midi playing isn't part of it. When it's finished I'm planning on a sci-fi themed game moreso than a traditional rpg.
f328ad No.16419580
>>16419556
just saw screenshot while scrolling /v/. what game is this about? got a link?
575741 No.16419596
Soundcloud embed. Click thumbnail to play.
>>16419413
Aren't you the nodev that was looking for someone to do music for you, specifically NES music? I could possibly assist you in making a soundtrack for your project with no costs.
Would you like it if I sent you a portfolio?
Here's a sample of my work. The vid related reminded me of this piece: https://files.catbox.moe/wpyn1e.mp3
>>16419573
That setting is absolutely perfect, because I always do a lot of "spacey" pieces. In fact, listen to this piece embed, it has three different compositions in one. Although, I used the VRC7 chip with the base 2A03 chip, so it is technically not NES authentic but FamiCom authentic.
45b97d No.16419626
>>16419557
Taught about that actually but I want to do something original.
>>16419596
yeah and that would be great! I really liked the sample.
575741 No.16419670
>>16419626
That sounds awesome, I have these folders from my MEGAupload that contains more chiptune stuff with some contemporary music.
The Unattainable Night(my latest album): https://mega.nz/#F!TaRWTSjI!QIUUAam_u_0c191WEVAk6g
Miscellaneous Works: https://mega.nz/#F!vLQUHIIK!iCsf-CFcpRZzKAz-Yktg4A
215d14 No.16419755
>>16419572
>>16419580
It's a very simple roguelite where you use your max HP as currency to buy upgrades. I'm still working on it (got 2 more hours) so no time to webm it for you, sorry.
https://www.youtube.com/watch?v=qI1neV6P4Bg
fcf82c No.16419762
First backup build for 5/5 is ready.
Worse case scenario something will be shown
Hopefully not this
183c08 No.16419813
>>16419359
>>16419324
It's coop too
>>16419364
I wouldn't have scrapped it, I would just use state machines instead.
45b97d No.16419848
>>16419670
Thanks man, love it! Do you have a contact? If not I put occasional updates here. Once my exams are done I can put more time in designing the actual game.
575741 No.16419902
>>16419848
You could message me at muscises@cock.li or at my soundcloud profile, and if you have any requests as you are working on the project I'll try my best. Appreciate it, and hope for the best for you.
125681 No.16419908
>>16419755
So risk vs reward.
8526c4 No.16420035
>>16419755
Everything looks like really tiny versions of those "Madness" characters.
d106e9 No.16420082
>>16419813
>Having friends
Look at this normalfag
fa922c No.16420454
>would've had something for demo day but decided to overhaul a bunch of mechanics and ended up not having enough time to work on them
m-maybe next time.
8d0974 No.16420538
>>16419143
>imgui
my nigger.
fe6bee No.16420696
>>16418353
Just recently ended my dev hiatus and started working on my hobby project again.
No concrete title atm.
Been solo dev'ing this project for a few years now.
Basically it's a project that's currently focused on AI (hybrid AI approach, slightly nuanced), and exploring this in new ways (neat mechanical implications); in a way that has to account for my current skill based mechanics (fromsoft esque).
I was also doing stuff like dual contouring on the GPU (nearly finished) w/an elder scrolls esque cell/chunking system.
>>16419085
HTN is pretty great, and is generally a lot more efficient than GOAP due to being forward-propagating rather than backwards-propagating; i.e. pruning large sets of tasks via the composite/method/primitive layout w/o a necessity of a best path heuristic alg.
So, you made the right decision there.
An annoying part you should look forward to is world state, and getting the correct (important) data to the AI without it turning into a cluster fuck.
Also almost forgot to mention that creating a domain GUI is extremely helpful; as otherwise crating new AI is a bit of a pain (w/all the p-cond, effects, expected effects, child tasks, etc etc).
>some dude released an open source HTN implementation
I'd recommend to read the game AI pro article (multiple times) if you want to jump in (I think I found what open source one you're referencing, it's basically a 1:1 to the spseudocode of the article).
You could also use that open-source code as a stepping stone to programming your own.
The reason why is because that article provides a few approaches (each with their own caveats).
So there's different approaches that cater to the different needs of the dev (more than one way to build the nuanced parts of it, that solve different potential weaknesses, and so on).
d79eb7 No.16420846
>>16418353
I'm not sure I'll actually finish the game before demo day, but I've been working on a brainfuck interpreter that maps part of the memory to a screen, and want to make snake with it. I'll probably at least release V1 of the interpreter plus source code on that day, though.
>>16419556
>Ludum Dare was this weekend
>had plenty of time to participate
>no one here posted a reminder
God dammit, I even like the theme for a change.
d8607f No.16421030
>>16419908
Yeah pretty much. I think the game is pretty hard right now but definitely beatable.
>>16420035
Didn't even think of that but yeah you're right.
>>16420846
>>no one here posted a reminder
Explains why people haven't been posting about it here, I expected more from /v/ to participate.
Our game is on itch.io for anyone to play right now. I'm gonna shill my LD page as well if anyone feel like leaving a comment.
https://jaoel.itch.io/life-pact
https://ldjam.com/events/ludum-dare/44/life-pact
5665e3 No.16421097
Reimplemented poking and headpats for a couple new body states. Still working out the transition for this but it's all WIP.
ba3bf9 No.16421110
>>16420696
> Also almost forgot to mention that creating a domain GUI is extremely helpful; as otherwise crating new AI is a bit of a pain (w/all the p-cond, effects, expected effects, child tasks, etc etc).
Part of what made me dislike the GOAP solutions. It's quite hard to organize in code-only implementations.
Visual domain editor is on the to do list, but I'll tell the dev that he should probably start with a visual debugger as that's more pressing to anyone who actually wants to use it.
3c923b No.16421312
>>16412636
>But I figured I couldn't make it as good as Tyrian
You certainly can make a better game than Tyrian anon, you don't need any of that pansy shit for a good shmup.
c205e0 No.16421342
>>16421097
It looks great!
Can you scrub her back?
469c4a No.16421948
>>16421342
While looking at a painting of Mt Fuji?
863551 No.16422439
>Open project i haven't touched for months
>Read through code
>Everything is autistically commented and organized
>Back in the game after 10 minutes
>Feels like i worked on this just yesterday
My thanks goes out to the anon who once posted about the importance of documentation.
15243d No.16422623
Would it be cool to full shill my links for a game im currently working on?
right now all the content that is currently in is from a 48 hour gamejam of two people.
i'd love feedback on both the game itself/twitter/patreon pages etc.
will have a steam link later as the onboarding process is ongoing atm.
15243d No.16422675
>>16422630
patreon.com/PunjiStudios
twitter.com/PunjiStudios
for anyone not wanting to click shill links, a quick rundown of the game is as follows
>A disorienting arcade style "shooter" where you need to make your shots count because you only get one and you control its trajectory the entire time. taking inspiration from movies like Wanted, and games like Superhot. The games main objective and goal is to reach the boss room at the end of the level and eliminate the target by avoiding collisions with anything that might stop your bullet.
>As you ascend the tower, each boss has a significantly larger floor plan, each floor is also randomly generated, making it that much more difficult to reach them. Currently we only have straight tiles to the boss, but are adding branching rooms to allow for full turns and dead ends.
1b6efe No.16422716
>>16422708
>8MB .gif's
use webm's ya dingus
15243d No.16422726
>>16422716
yeah you right, they were dying on the upload.
and they are chugging on the load now haha
125681 No.16422751
>>16422708
This will give people motion sickness.
471233 No.16422824
>>16421342
Youll be able to scrub her hair. Arms too if i have time.
15243d No.16422865
>>16422751
the framerate in the gif causes some uneasiness with myself, but when the game plays at a stable framerate no one seemed to comment anything aside from being disorienting because the world is spinning making everyone slowly turn their heads to try to compensate.
125681 No.16422905
15243d No.16422939
>>16422905
as in confusing, not motion sick
you can also control the spin with the side buttons on the mouse to spin faster or slower.
having the playering spin makes it so the level is forever evolving instead of the same patterns every time you come to a repeat tile, you'll be coming at it from a different rotation.
noted none the less, thank you.
863551 No.16423006
>>16422708
>>16422710
Damn you just gave me a massive surge of nostalgia. Played a very similar game on my cousins laptop more than a decade ago.
>https://missile-game.bwhmather.com/
15243d No.16423095
>>16423006
had completely forgot about the missle game…
very similar in style haha.
9437fa No.16423197
>>16418817
Kind of a progress post. Realized that I had to make it so clicking anywhere on the screen that wasn't a menu button had to hide my menus, fixed that and have alt keys working with input. Some more polish and I can get to working on settings and game start options.
8eac2a No.16423426
>>16422675
It could be good if you polish it unlike those goddamn gifs and your reddit spacing.
Fuck off to reddit.
So, about progress:
> Given up on my Cathedral project.
The best I could do for it is make it open source and put it online in hopes that someone, probably future me will find it and finish it.
On the positive side
> Started working on my Golden box engine Godot port which is later known as Unlimited Adventure.
> Currently stuck on trying to compile already existing source port.
> Spent 3 days or so days trying to get rid of those damn Windows dependencies.
Maybe it's time to install VirtualBox with VisualStudio, so I would have any visual progress.
9d6c0a No.16423551
>>16423426
it's all from quickly recording footage from a 48 hour gamejam game. which was also how long the game's been worked on.
d106e9 No.16423590
Is there any good literature floating around about how to do good randomly generated levels?
6d1ac3 No.16423627
>>16423590
What kind of levels? I have some PDF's on procedural floor plans that look like normal building floor plans. If you think you can get something out of those I can post them.
There's also this wiki.
http://pcg.wikidot.com/
Honestly if you want to make good procedural levels get good at making hand-crafted levels in the genre you want.
d106e9 No.16423649
>>16423627
Since this also covers /vm/, what I want to do right now is randomly generate a number of rooms in Super Metroid. What I'd do is run a script or program against the vanilla rom, do the things, and then spit out a new rom to play, much like how the item randomizers do it, but on a larger scale. I know how romhacking works, and I've been tinkering with stuff over the last few months, and can comfortably read and write a good chunk of data structures within the game itself (though only on the rom file, nothing with live memory)
It would be a ""roguelite"" in the vaguest sense of the word. But basically, you'd choose a game length, go against maybe 6-8 mini/bosses across 3-5 areas, and all of the items may or may not appear depending on settings. So obviously, I'd have to factor in what abilities a player has access to for any part of the game.
My naive approach was to evenly distribute item locations across a 2D plane, and then figure out where the items are located, then generate room shapes/areas and give each one a "purpose" (connection, enemy challenge, treasure, one-way exit from a boss, etc) and also track abilities and movement required for each one. At that point, the room data would be generated
For each individual screen, I was thinking of reading the raw room data and based on connections (eg open north or south passage), it would figure out the block types on that screen, and add them to a "dictionary" for that screen type. Then, it could use this as a bias when it generates the rooms.
It doesn't have to be perfect, since this is only the proof-of-concept stage but I don't want to shoehorn myself into doing something retarded
8b3490 No.16423808
>reading code I wrote half a year ago after not doing any dev since then
>it's like looking at a smarter version of myself, can't understand anything despite it all being autistically documented
fuck this shit
6d1ac3 No.16424013
>>16423649
I've given some thought to this in the past, so you can steal my idea if you want.
This paper goes over how rooms can be represented using a graph, Figure 2.1 on page 7 for reference. You could probably do something like that, where you create a graph of the levels.
First you generate a number of nodes that are the number of rooms you want and connect them all in a straight line, then you lay the items randomly along that line and at various points somewhere after item X but before the next item, you tag a connection with "You need X item to pass this point", which I'll call a gate.
Then you tag random nodes as being able to have more than two connections, which I'll call a branching node. You can give this node a new maximum value.
Some items may be in dead-end rooms. These are leaf nodes and can either be placed at the very end somewhere, or on a branching node. Same with minibosses that are in dead-end rooms.
After that you incorporate backtracking, where the path you need to take is behind the item. You grab a gate and possibly a random number of nodes between that gate and the item, and you break that connection then move it and connect it to an open branching node behind the item that isn't already maxed out with connections.
At this point you can create loops. Pick a room and hold it, then trace back a random number of nodes. If you find a gate, acknowledge that you'll need to incorporate that gate on any connection made before that. If you find two gates, either stop, or add another node with the appropriate gate. So on and so forth. Once you stop or reach the random node, create the appropriate connections.
Once the graph is generated you can lay out the nodes on the 2d plane ensuring that no connections cross over each other. You may want to read up on Knot theory or just be very, very careful when generating the nodes and connections. Once you've accomplished that, grow rectangles out in all directions from all the nodes that have a minimum width or height. A gate for a speed upgrade must be a certain length, and a gate for jump boots has to be a certain height. After those minimum requirements are met rooms adjacent to these are grown, starting at the connection and growing out to a range of widths and heights depending on the the number of connections, type of room, and type of connections. While growing rooms, nodes can move around and shift to accommodate, but not cross over lines or pass through other nodes. Repeat for all rooms.
Once the boundaries of the rooms are filled, you incorporate climbable surfaces in tall rooms, or trace back and check that the player has the enemy freezing upgrade to use the enemies that can be turned into platforms. After making sure that the bare minimum has been reached for navigation, you can add variation to the levels that doesn't affect the navigation. With the navigation handled, you can start incorporating other enemies, environmental hazards, and figuring out where in the room to place the items.
At this point you can propagate biomes from the starting place and key items out over the entire map, stopping at gates or at least not propagating very far past them. From the biomes you can apply the correct tilemap over everything.
That's a very basic and rough outline. There are still many details that you would have to figure out, but it's the basic idea.
2304ef No.16424171
>>16424013
>pdf
Oh wow this came at such a perfect time. Thanks anon!
6d1ac3 No.16424209
>>16424171
Have some more.
7e83d9 No.16424222
>>16423197
Reworked my tileset names and orders, reworked all of the scenes with UI elements and adjusted scripts accordingly, added buttons to menu graphics. Menu drop-downs are not actual drop downs for graphic control, they are a tilemap for each drop-down and are each hidden (used in script to determine what tiles should be displayed for my "buttons"), might change this to just swap the drop-down graphics in one tilemap instead. Next is getting a game to start and modify settings.
Probably not going to make 4chan AGDG's demo day (May 3rd, also baaawwww cross-poster even though I don't post on 4chan just the Discord) but I should make the May 5th demo day. Not going to have the RPG mode in, but should at least have room 1 with a game loop set up.
8d582d No.16424305
>Add 3000 LoC without being able to test
>Decide to test a little bit just for the hell of it
>Oh fuck why is my computer frozen
>INTEL-MESA: error: ../mesa-18.2.8/src/intel/vulkan/anv_device.c:2005: GPU hung on one of our command buffers
hahahahaha kill me.
8d582d No.16424485
>>16424305
Ok I figured out the problem. I was using the same staging buffer for both my indirect draw commands and vertex data, so there was probably a data race which caused junk data to be fed in for my draw command, causing my shitty integrated Intel GPU to idle (and also making my screen apparently hang because that's also how my WM is rendered). I just fixed it by using two separate staging buffers since I didn't feel like messing with synchronization anymore than I already did.
2304ef No.16424507
>>16424485
Too late I sent the hitman already.
8d582d No.16424512
6d1ac3 No.16425928
I modeled some arms and hands.
Feedback is appreciated.
5aff01 No.16425979
>>16425928
Should have made a closer shot, at this distance I can't say anything more substantial than "looks pretty good".
2304ef No.16425987
>>16425928
looks pretty good
fcf82c No.16425993
>>16425928
Don't seem wrong, but yo should check how shoulder topology is made because that's always a bother when you are starting
6d1ac3 No.16426265
>>16425979
Here are some closeups of the hand. Don't mind the UV unwrapping lines.
>>16425987
Thanks.
>>16425993
This is a first person model. The player isn't going to see anything above the bicep. I'll still look into it because eventually I'll be modeling full people.
d21a18 No.16426427
This is somewhat related to game dev but what instrument is being prominently played in this track track?
fcf82c No.16426452
>>16426427
vuvuzela clearly
575741 No.16426457
>>16426427
The one that sounds like a mixture between a kazoo, flute, and saxophone? Probably an exotic instrument of some sorts.
6d1ac3 No.16426478
>>16426427
It sounds like something between a flute and a reed instrument. You can search through lists of Chinese and Japanese wind instruments and see if any of them sound close to what you're looking for.
d106e9 No.16426487
Speaking of music, what's that African drum instrument that makes that bassy bu-woomp sound?
And that one flutey instrument from jungle or Asian soundtracks? Most frequently heard in mgs3 I think
6d1ac3 No.16426506
>>16426427
After some looking around it seems like one possibility is the Chinese Suona.
575741 No.16426516
Invidious embed. Click thumbnail to play.
>>16426487
There are a couple of African Drums that make that sound, but it could be the Bougarabou.
d106e9 No.16426524
>>16426516
No, it's usually a slower, elastic and elongated sound f that makes any sense? I'll try to find a song
d21a18 No.16426584
>>16426506
>Chinese Suona
I don't think so. It sounds like a wind instrument that has multiple 'pipes' at diferent pitches similar to bag pipes (I don'y know music lingo). The chinese lusheng is the closest thing I found
https://invidio.us/watch?v=G6JJUd8MfKA
1:11
2304ef No.16426805
>>16426487
The are japanese drums that do that bu-hwoop sound.
b55195 No.16427038
Invidious embed. Click thumbnail to play.
>>16426487
Maybe you're thinking of the tabla?
>>16426427
One thing to note is that at the beginning the instrument is being played in fifths and it sounds like later it's being played in octaves, which might mess with the timbre. If you asked me about a generic Asian-sounding wind instrument I'd probably say shakuhachi flute.
b55195 No.16427045
Invidious embed. Click thumbnail to play.
>>16427038
Embed related.
And the latest of my vulkan woes:
>INTEL-MESA: error: ../mesa-18.2.8/src/intel/vulkan/anv_queue.c:47: execbuf2 failed: Invalid argument (VK_ERROR_DEVICE_LOST)
>INTEL-MESA: error: ../mesa-18.2.8/src/intel/vulkan/anv_queue.c:247: vkQueueSubmit() failed (VK_ERROR_DEVICE_LOST)
d106e9 No.16427049
>>16427038
Yeah Tabla is closest to what I'm thinking of I think
b55195 No.16427326
>>16427045
I'm guessing why the driver/GPU is crashing is because of some kind of synchronization error, and I've narrowed it down to a vkFreeMemory before I reallocate a buffer to expand it because when I remove that line my program magically works. The problem is, I can put as many vkDeviceWaitIdle()s I want around it, and I still get the same error.
d106e9 No.16427494
Well, it didn't turn out like I thought it would, but I was able to programmatically inject a bunch of tile data at a target memory address. The only downside is that I have to manually run lunarcompress each time to test it
ba67df No.16427808
>>16427494
Mad respect, dev-anon. Keep at it!
564774 No.16427809
>>16427045
>Going anywhere near intel vulkan drivers
Don't do this.
fc692e No.16428184
>>16424222
Main menu can be toggled, menu input disables when hidden, when shown hides all UI group objects. Doesn't hide console, which will be player action window for things like items and squad commands, so when it is open with the main menu those options will black out. Gotta program UI windows to close in a stack, so console would close first, main menu, etc.
d9f6fa No.16428213
>>16419324
>MoM dev stopped posting here
>Aethyr dev stopped posting here as soon as he got shekels from Reddit
fa3f23 No.16428244
Alright so… I've been playing around with a pseudorandom number generator. So I created a procedural generator for the world, but I've reached memory limitations using a fixed XxY grid. Like I can go up to 5000x5000, but obviously this is ridiculous to have that much memory allocated all at once when you can only see so many tiles at once anyway, right? Not to mention it means the world size is fixed, and that's an issue too. So I decided to write a chunk system, but I would like to figure out a means to use PRNG and a chunk's x/y/z location together to create a chunk seed that is the same every time said chunk gets loaded for continuity. Cause obviously it would be odd if you walked 100 tiles to the east, and then came back west and everything was loading differently.
Any ideas?
fa3f23 No.16428258
>>16428244
Also just making sure to point out, I just need an idea for determining a numeric value, not the actual world gen.
d79eb7 No.16428289
>>16428244
You simply set the seed at the start of your procgen function. Said function should take at least two variables, the world seed (generated once at world creation) and an X/Y offset to see which chunk you're generating. You do have to ensure your PRNG generator always returns the same values even when multithreaded, so you should either have one instance that gets locked to one chunk at a time, or one instance for each chunk if you want to fully multithread even the chunk loading.
Then again, if you want actual user interaction with the world you're going to have to save chunks to disk anyway, so you'd only need to gen them once.
9e1a5f No.16428366
>>16428213
I would probably stop coming here too if my game became popular. 8chan is an engine for depression and nothing much else, in fact I would probably have a game already if I never found this. The benefits of imageboards end when people start caring about your stuff, you can pretend that they're good for "honest feedback" but the utility and uniqueness of that in practicality is almost 0, you can get plenty of good and even more constructive feedback elsewhere if you ask for it and tell people to not hold back.
75d1fc No.16428369
Morning Gays, you got your demo's ready?
75d1fc No.16428379
>>16428366
Meh, I disagree with you there. Like I enjoy this board and the people on it, so even if I made a game that got popular I'd still use this place to argue about Sonic and other dumb shit. Like /v/ is fun, so I have no issues coming here. Even if I had to hide my game because of some bigshot publisher, I'd still post here anonymously.
fa3f23 No.16428430
>>16428289
No, I don't want user interaction with the terrain.
fa3f23 No.16428435
>>16428369
Sadly no, as I broke my ray casting function.
75d1fc No.16428459
>>16428435
But why not Ray Tracing?
8a7f02 No.16428463
>>16428459
That's cheating, you should at least ray freehand.
d106e9 No.16428479
>>16428430
>>16428244
I'm confused,don't most languages come with a RNG function? You'd just make a global seed like anon said, then some kind of offset/sub seed for each chunk
fa3f23 No.16428491
>>16428479
Yes. That is what I was trying to determine, how to generate a proper sub seed on a per chunk basis. But I came up with an idea, so I'm gonna run with that and see where it takes me. Honestly, this thread didn't help me at all, because I already knew what you guys were telling me, I asked you for ideas to generate the sub seed, not how to generate my world. But people don't read.
1b6efe No.16428492
d79eb7 No.16428501
>>16428491
That's entirely dependent on how your RNG works, you dumb nog. If your seed is 64 bits, you can have for instance a 32 bit world seed, 16 bit x seed and 16 bit y seed, then just say totalseed = (worldseed << 32) + (xseed << 16) + yseed;
I didn't assume that was your problem since it's so fucking simple that you should really know how to do it before you can come up with a decent RNG. This is honestly like saying you don't know what a modulo is.
0d724c No.16428510
>>16428369
Should be ready today or early tomorrow.
2304ef No.16428663
>>16428501
Was it really that influential? I had to google it.
79977e No.16428680
d79eb7 No.16428722
>>16428663
Jesus, that thing is hideous and I love it.
d302cd No.16428879
I'm going to start working on a dynamic topographic sorting system for a 2-D rpg in gamemaker. I want to make it more complex than depth = z and was wondering if you guys might have advice for where to start?
136f06 No.16428900
>>16427809
I have no choice; this is the only vulkan machine I have. I'm thinking to work around this I should just pre-allocate big blocks of memory of certain types and then divy that up for my various buffers, then free that memory only at the end of the program.
>>16428879
Why?
68d231 No.16429150
Really general question:
What were games like the Interplay Lord of the Rings RPG and Worlds of Ultima: Savage Empire programmed in? Was it an engine? They are so similar in so many ways.
Would being familiar with Z80/65c816 Assembly be useful at all for making a game like that? Or would it be C++ from scratch?
e0b944 No.16429184
>>16429150
>Was it an engine?
yes and no. Savage Empire was built in the same framework as Ultima 6. I don't know if you could call it an engine as we would understand it today (being invclusive of a large scale toolkit like Unity or Unreal), but the underlying code is much the same and there is an editor for the U6 derivative games
to my knowledge LotR is a different beast entirely, and the only thing shared is the sprite style
96ddfb No.16429250
>>16428879
>in gamemaker
Use godot dumbass
69d9cd No.16429277
>>16428244
Just use a two-dimensional noise function, you dingus: https://en.wikipedia.org/wiki/Perlin_noise
744883 No.16429281
>>16429250
Game Maker isn't that bad
2304ef No.16429288
>>16428244
If you're going the >>16429277 route, use OpenSimplex.
d106e9 No.16429293
Also, this is unrelated to any project I'm currently working on, but I had a vague idea on how it would be to make an erotic text adventure game. I remembered I have no idea how to put queries in the text dump (eg for flags and stats) and quickly gave up on it.
Is there an engine or whatever that's good for that?
13ae87 No.16429295
>>16429281
It's pretty shit. Framerate is still tied to room speed and it's overall ridiculously bloated. There's a bunch of shit wrong with it, too, but it's not coming to mind right now. I just remember the new redesign looking like absolute shit.
Godot's not that great either, between being unfinished, lacking in documentation, breaking functionality between updates several times and overall being dick-sucked mostly because it's FOSS, meaning it can do no wrong in the eyes of the typical Linux crowd. That has some potential though.
Making your own engine is by far the best option, though.
215d14 No.16429300
>>16429287
Gamemaker is fine depending on what game you are making, don't be a fag.
We're gonna keep working on this gamejam game for a while I think, I'm still having fun with it at least. Gonna redo the entire mapgen this weekend.
2304ef No.16429312
>>16429295
Greatest problem with Godot is the OOP.
69d9cd No.16429322
>>16429312
OOP is fine for the paradigm, especially because it makes it far easier to separate your designers from your programmers (eg. I was making a game with a non-programmer friend a year or so ago, and due to the design of Godot, I could write supporting modules that he could entirely work with without code. He could make behavior requests and I could work those in while he worked on other things).
I think the biggest problem with Godot is using their own language instead of making the core programming language something better that already exists. GDNative and NativeScript (I'm still not exactly sure the difference) let you integrate other languages, but it's annoying that the easy and seamless core language isn't as easy and seamless as it could be. As a professional Python programmer (I know, calm down, it's not my primary language, but I do use it at work), using GDScript always feels like an uphill fight to unnaturally do in a weird way the things that Python already makes easy.
I'd just prefer Python or Lua or something. Even Ruby. GDScript gets the job done, but it feels like a bad hack in a lot of different ways.
13ae87 No.16429326
>>16429312
I'd argue it's their insistence on using some proprietary made up bullshit programming language, and one based on python at that. Last I checked, they had experimental C# support but they're not really bothering to put any real emphasis on making that usable.
79977e No.16429336
>>16429293
Twine or Ren'Py will work fine.
>>16429322
Yeah it's basically a gimped version of Python, the inability to use multiple inheritance and other OOP stuff is annoying.
d106e9 No.16429358
>>16429343
Is this using boids? I assuming you're using some kind of spatial grouping on them
329c3b No.16429362
>>16429358
nah, it's just 10 groups of 100 pawns each, they never change groups
a785a0 No.16429373
>>16429326
>>16429336
>>16429322
It's not even that difficult to use GDscript. It's strongly based on unity so the majority of it's techniques will apply here as well.
2304ef No.16429383
>>16429322
I criticize OOP because I want an ECS engine that's highly vectorized and automatically multithreaded. Until that exists no one can make the spiritual succesor of SupCom FA in Godot.
>>16429326
>based on python
You mean in syntax, right? Isn't GDScript super fast? I'd think that was the point.
fcf82c No.16429396
>>16429383
>I criticize OOP because I want an ECS engine that's highly vectorized and automatically multithreaded
Well, maybe you should look into a real man's engine, like Unity
a3c276 No.16429411
>>16422623
>>16422675
Looks pretty rad, need any voice work done at all?
I guess the same question goes for anyone else-
Does anyone want any britbong voice work recorded for their projects currently?
68d231 No.16429459
>>16429184
Thanks, Anon. Found a couple editor options actually. One seems to be python based which is great since I've done some dicking around in Python, mostly for IRC bots.
I did watch some game play vids of them both, and yeah I don't know why I thought of them as so similar. it's just the slanted view and character sprites really. I spent endless hours as a kid playing them both, my sister and I even nagged and nagged my Dad to buy my family 486's first sound card to hear the digitised battle sounds. I guess after 20 years I was rusty on the mechanics, so I apologise for that. Now I have to slap some test stuff together in Asperite and see if I can figure things out.Thanks again!
69d9cd No.16429510
>>16429373
It's not that it's difficult, it's that there are a lot of little things about it that are very surprising. The way that some types handle are especially surprising, and a script itself being a class is weird as hell. You have to re-learn a lot of things, and there is a disconnect between some things that should be identical between script and non-script (for instance, connecting signals can be done through a script or the interface, and is shown differently for each, when it should probably be enforced to just have one canonical way).
Some syntax things with GDScript are also really awkward, like the distinction between a dictionary and an array.
Testing out new ideas in GDScript are also annoying, because there's no way to just run a standalone GDScript from the command line or anything like that. Having a REPL for gdscript would be good. Take something as simple as format strings: http://docs.godotengine.org/en/3.1/getting_started/scripting/gdscript/gdscript_format_string.html#format-method-examples
In order to test these examples out and try it for yourself, you have to have a runnable Godot project and work it into some particular node's script in a particular place and print out the result. At least it's got a decent enough debugger, but having to use a syntactic element (the "breakpoint" command) typed into the program itself to use it is really fucking weird, and makes it awkward to properly debug a running program.
When you get used to it, GDScript is actually a pretty decent and useable programming language, but it has a lot of very specific and weird behavior and a lot of annoying limitations that would have been avoided by using something else that existed already.
Using GDNative is doable, but then you have to completely program your own implementation or trust one that you find. C# is alright, but not perfect, and also still considered an experimental language for Godot.
For an amateur game dev, it's good and gets the job done. For a professional programmer who expects certain things from a programming language, it's a huge compromise in a lot of different places (though I do love a lot of things about it, like being able to develop modular scripts that non-programmers can interact with through export variables).
ba3bf9 No.16429545
>>16429469
What Anon was referring to was that they hired Mike Acton and are pretty much completely rebuilding the engine. They call it DOTS (Data-Oriented Tech Stack) and it encompasses everything from scripting using a data-oriented ECS paradigm, over audio and AI to physics. The stated goal is "performance by default" and they hope to achieve that not only due to utilizing the CPU more efficiently, but also by making it easier to make your game use multiple threads without you having to do much yourself.
2304ef No.16429550
>>16429545
I've heard of that, but I don't want to pay them.
ba3bf9 No.16429568
>>16429550
I see. I'd be interested in knowing whether any open source engine or framework goes that far. Never looked.
Personally, I don't have a problem with paying the Unity devs, because I'm a filthy capitalist. I like the idea of paying others to do work so I don't have to. In this case developing and maintaining an engine that has more features than I could realistically implement myself.
d106e9 No.16429716
>>16429336
>Twine
I installed it and it just feels like a barebones html-enabled text editor. Was there even a sample project with it? It didn't feel right
>Ren'Py
Originally I hadn't tried it because I assumed it'd be mostly coding (and I assume it will be), but it looks like an IDE of sorts right out of the box. Probably going to go with this. Thanks.
2304ef No.16429893
>>16429568
FOSS is the future, old man! I don't like the idea of making games in C#, and I've heard so much shit about Unity that I'm jaded by now.
7adeb2 No.16429911
>>16429716
Twine is probably better for just text, and it's more friendly if you don't know how to code and want something friendly
you'll want to get the SugarCube 2 format, which I think comes with a sample
d106e9 No.16429913
>>16429893
What's wrong with C#?
Are you complaining because it's not "as pure" as C/++ and runs on a virtual machine, or because of Microsoft's hands in it? Mono exists, for example.
ba3bf9 No.16429922
>>16429893
Unity is an excellent engine. Sure, it has its problems (as all software solutions of this scale that have to cover such a wide area of use cases have), but it's by no means bad. The go-to anti-Unity argument is to hold the engine responsible for the shovelware made with it, which is complete bs. If anything, the fact that those completely incompetent "devs" can produce something vaguely resembling a game with Unity is a testament to its usability. They wouldn't be capable of doing that from scratch with older engines like Source.
2304ef No.16429924
>>16429913
Mostly prejudice, but my biggest issue with Unity is the bad notion I have of it from years of anons complaining.
2304ef No.16429927
>>16429924
Also payment. I don't want to pay them.
ba3bf9 No.16429935
>>16429893
I also love FOSS, but I won't sacrifice the quality of my games to be FOSS at all costs. I use Blender, I support Linux and I plan to make parts of the games I work on open source. That's good enough for me.
7adeb2 No.16429936
>>16429924
if you want to use C# Godot is completely FOSS
d106e9 No.16429969
>>16429924
C# is probably one of a very select good things that Microsoft has made over the years.
(Visual Studio is also pretty good if you're into that sort of thing, but there are plenty of FOSS IDEs available too)
2304ef No.16430051
>>16429969
Isn't C# just Java 2.0?
d106e9 No.16430074
>>16430051
It is exactly like Java, but good.
When it first came out, C#1.0 and C#2.0 were literally identical to Java as much as possible, to coax Java programmers (probably mostly pajeets) onto their new product, and it worked. Keywords, namespace stuff, it's basically a 1:1 carbon copy, the only real superficial difference is that Java uses naming likeThis, while C# uses names LikeThis.
There's a few other differences too, like how any function in Java is extensible by default (a security nightmare) and generally wonky language. C# is essentially Java but done properly. I'm actually stuck on C#4.0 because of technical reasons*, but throughout the years, there have been a large number of performance and VM optimizations.
*: I have Win7 with Windows Update telemetry neutered. Because I prefer to use VS, I'm using VS2010 Express C# edition, which is hardcoded to only support up to 4.0. However, newer versions of VS need that Universe C support pack or whatever that Win8.1 provides, but I cannot install it, even if I enable Windows Update again.
d302cd No.16430233
>>16429250
Unfortunately I realized this only when it was too late.
7601aa No.16430306
YouTube embed. Click thumbnail to play.
>>16428184
Made a new level to test some things. Have a video. Not making demo day I think, too much to fix and I want this to be something worth playing.
fcf82c No.16430337
>>16428369
Just finished making items burn
Right now things are cooking at 10 minutes per second.
The burn penalties are running at normal time scale however, so yeah, leaving something burn for a whole 30 seconds is enough to practically ruin the food.
Seems like there will be plenty of the cooking system to show
One could say that this was only finished today because standing on obsidian and digging down is not a smart idea, since water takes slightly longer to make new obsidian than it takes for you to fall and lose all items
2304ef No.16430555
>>16430452
Maybe add easing at the end of the arm extension.
fe6bee No.16430840
>>16429924
Maybe do your own research?
Instead of listening to the past autists that suffered from the dunning-kruger effect.
Yeah, /v/ is a savant when it comes to gameplay, but development… wew lad do they have no fucking clue.
Life advice: Nobody can convince you to change your mind; you're the only one can do so.
Otherwise, if you "ask" what decision to make, you're just looking for social affirmation of the decision you've already made.
Make up your mind to be able to change your mind, research it, then make your decision w/critical thinking.
2304ef No.16430930
>>16430840
>Unity
<Unity
You're asking for the world, anon.
6d1ac3 No.16430937
>>16430555 (checked)
Thanks for the feedback. I should have started out doing this, but I looked up a video and found that a punch is more like 11 frames @ 24 FPS while mine is 7 frames @ 24 FPS.
I increased the animation to 12 frames, with 3 frames from the start to the punch landing, same as the reference, but a longer time to retract the fist back. There's also a frame of pause while the fist is fully extended where it moves back only slightly before fully accelerating fully to a resting position. I also improved the movement of the left hand which I think better sells the impact. If in-game the punch feels too sluggish I'll bump it down to 2 frames to hit.
6974b8 No.16431013
>>16429150
Like many other good old games LotR V1 has open source implementation. You can check one out.
If by some chance I would be able to compile open source implementation of Golden box engine by demo day I'd show it. There very little of my work there yet, thought. Big idea is to make tools for Godot similar to those of Golden box engine.
fe6bee No.16431032
>>16430930
Less about unity and more about your decision making process, and the way that blends into your goto heuristics for decision making.
You've said it yourself, you've already made up your mind, and I touched on what you're doing with your line of self-leading questioning.
That's fine and all, however, the way you think is self-detrimental; which is my point.
Use critical thinking more and also realize that confirmation bias exists.
Overall tho, u do u, no skin off my back.
a785a0 No.16431101
>>16429924
You can pirate unity pro if you're concerned about DRM
ca468c No.16431105
Should I considered programming Vulkan next?
I've tried programming multiple SDL engines and what not and it always ends around model loading implementation and lighting (don't even fucking get me started on animations)
So if I was going to do something from scratch should I just go straight to Vulkan? Is there a C framework that's current and up to date that provides libraries for handling all the bullshit, but isn't something as big as Godot?
7b9f24 No.16431114
>>16431105
If you want to make a game, no. If you want to work on an interesting engine/learning project, sure.
136f06 No.16431123
>>16431105
From someone who's spent the past 2 years writing an engine instead of writing the game he wanted to make:
Probably not. "Vulkan" is more wrangling with hardware aspects–memory, concurrency–than what most people consider graphics programming (i.e. writing fancy shaders).
ca468c No.16431128
>>16431114
I do want to make a game, but I am also interested in learning more about programming.
It kinda ruins my cred if I like to do all these impressive low level nonbloat programs then use a pre made engine.
2304ef No.16431154
>>16431032
Ok, I've taken some time to articulate my full thoughts, since until now I've just half-explained myself retardedly.
Regarding the percentage payment, the complexities of accounting are something I wouldn't want to make worse. This year I generated three fines all revolving around a single mistake with my earnings/tax statements that my shithole country misinformed me on. It's one thing to have some account that steam dumps the money on, but to have to state sales numbers to Unity periodically? Missing one month and making a mistake in stating earnings have already caused me so many problems that I just don't want to deal with it, regardless of greed, which I do have in plenty amount.
Regarding development, I don't want to put all the effort into learning Unity just to someday have to pull all that effort again into migrating to Godot, which I've always planned to end in anyway since I want to switch to FOSS on principle as much as possible. Migrating tools is a major undertaking. This is why I've stayed with 3ds Max even though I've intended to switch to Maya for the longest time.
I'll admit I've been discouraged from Godot lately. Ever since Unity announced it's ECS-style stuff, Godot seems to have been left behind. Godot's 3D capabilities are still limited. Its devs make it worse by focusing their efforts into accessibility with their visual node programming crap instead of delving into deeper features.
Lastly, I'm studying CS and the idea of an open source engine I'll be able to add things to and modify really appeals to me from an long-term effort investment perspective.
fe6bee No.16431157
>>16431128
>It kinda ruins my cred
just do what makes you love gamedev.
if that's making an engine, cool, if that's making a game (w/a premade engine), cool.
it's difficult, but push aside egoistic things like "cred" if you're sacrificing something priceless like your love for your hobby. you'll start having a lot more fun that way. while being more passionate about the hobby more than ever. which results in a positive feedback loop.
I'd also think about what you really want to do with your time immersed in gamedev, and be realistic about it.
Which is more important; making a game, making an engine, or making an engine and a game?
Is the end result the most important, i.e. what drives you, or is it something more abstract; like learning X topic?
2304ef No.16431161
>>16431128
If you try to do everything you won't finish anything.
1f42cd No.16431163
>>16431141
That's really cute dude
8f9b20 No.16431179
>>16431141
I don't like, how water doesn't give distortion. It looks fucked. I know, it's simpler this way, but could you at least make water opaque?
d79eb7 No.16431183
>>16431128
>It kinda ruins my cred if I like to do all these impressive low level nonbloat programs then use a pre made engine
Then use your low level non-bloat programs to make a game instead of starting over again
<but I haven't finished any of them
Then you haven't made any impressive non-bloat programs, and have no cred to lose.
5665e3 No.16431189
>>16431179
I can add some distortion. I'll have to bump up reflections.
7a2c94 No.16431225
>>16431105
Are you looking for this?:
https://github.com/GPUOpen-LibrariesAndSDKs/V-EZ
But it looks like you keep giving up prematurely. You have to be able to do all of those things to make game. If you don't want to use an engine but don't want to make one either, I guess you could use OGRE?
fe6bee No.16431252
>>16431154
Good writeup.
>Regarding the percentage payment
To clarify, just for unity that is, there's a yearly licensing fee that's non-optional IFF you had made 100k+ earnings/funding (for your game company or game sales if you're the sole proprietor) in the previous fiscal year.
Sounds like the main issue is your country's tax system, and that's implicit if there's any money made.
>effort into learning Unity just to someday have to pull all that effort again into migrating to Godot
Check out decoupling design patterns; such as the dependency inversion principle.
Decoupling patterns allow for the migration of your high level codebase from engine to engine, but of course you do need to rewrite the low-level execution code.
It's worth knowing and practicing even with a codebase that interfaces with an engine you like.
Although, with Unity's ECS implementation being highly engine specific it's questionable if that's possible w/o creating your own ECS API in the engine you'd be migrating to.
>which I've always planned to end in anyway
Humm, it seems that Godot matches with your philosophy, but it lacks some core criteria for committing; such as an ECS API/design.
You could always use an open source library to build your own ECS API into Godot; which meshes well with the long-term investment perspective.
However, my godot knowledge is surface level so I can't say how difficult this would be (maybe its been done already?).
Although, the limited 3D capabilities are worrisome even with that issue hypothetically resolved.
>This is why I've stayed with 3ds Max even though I've intended to switch to Maya for the longest time.
Sorry to ask an antagonistic question, but isn't maya closed source?
Wouldn't it be better to switch to blender since it complies with your philosophy?
>discouraged from Godot lately
>devs focusing their efforts into accessibility
Humm, from an outsider's perspective the accessibility part really makes me suspicious of their motives; i.e. more (less skilled) users = more patreon bucks, but then again, more funding equals more time they can spend working on the engine itself (as to implement more difficult features and so on).
So it could just be a long-term tactic so they can have more funding (for the talent, so they have more dev time) to implement the features they really want to implement.
Godot Pros
>matches philosophy, FOSS
>hypothetically can solve ECS issue w/library
>long-term payoffs
>no licensing concerns
Godot Cons
<questionable engine direction
<limited 3d capabilities
<initial timesink to resolve no ECS issue w/own API
<questionable compatibility of own API due to updates & godot API changes, i.e. must maintain homebrew API as engine changes
Unity Pros
>ECS
>cutting edge 3d capabilities
>no need to maintain homebrew API
>short to mid-term payoffs
Unity Cons
<not FOSS
<licensing concerns
<need to learn API (initial timesink)
<potential of requiring codebase migration
<Unity
0c4143 No.16431277
Do you guys think contruct classic a good engine and is there a possibility to add an opengl renderer or something ?
7601aa No.16431283
>>16431252
Let Godot be your last choice. It is a very bug-filled engine and I've barely scratched the surface. There is a reason why 2d in 3d is what I went with.
fe6bee No.16431305
>>16431283
Godot Cons
<Bug ridden
Unity Pros
>Surface level bugs are fixed quickly
>>16431277
Is it written in HolyC? No? Garbage. idk, but it uses python which is a big no-go for games imo
0c4143 No.16431315
>>16431305
It's written with C++ but there's an optional scripting feature which uses python most of it's addons are written using C++ but i want to know if i can change it's renderer from DirectX9 to maybe OpenGl or something although the faggots and sicrra abonneded the engine to make another shitty java script engine
fe6bee No.16431318
>>16431315
My first question would be: why?
Tho, not sure about your question. If it's open source then I suppose it's possible… but is it a reasonable investment of time?
0c4143 No.16431321
>>16431318
>Why ?
i want to publish games on other platforms other then windows and at the same time i can emprove the engine renderer and maybe and Vulkan
>Is It open source
Yes but there's no documantation to it
>Is it a reasonable investment of time ?
this is weird but i have no coding expeirence what so ever in C++ and i'm total beginner so yes i have autism.
fe6bee No.16431326
>>16431321
I can't tell if you're being serious or not, kek, man I can't help u sorry.
thanks for the laugh though
2304ef No.16431328
>>16431252
>You could always use an open source library to build your own ECS API into Godot; which meshes well with the long-term investment perspective.
Yes, that would be the plan, though I'd stick with OOP for the first game or two. GDNative allows C/C++ modules to be created, so one can offload as much as one wants to native code and use GDScript only for very high level stuff, or potentially not at all.
>the limited 3D capabilities are worrisome
That's my greatest hangup right now.
>Maya and no Blender?
I should have mentioned it too. Maya has been the aim for a long time, but I have gotten more and more confident in Blender, I just haven't really looked into it yet. Like with Godot, I fear there might be something crucial that Blender lacks that I won't realize until much later, though that seems unlikely. I work in VFX so the plugins are a big deal (FumeFx, Krakatoa, Rayfire), but once in gamedev it won't matter. I've heard the UI and pipeline is very different though.
>accessibility part really makes me suspicious of their motives
Clearly they are prioritizing wider adoption. Not sure if it's about money itself or they're just playing the long game. If they could get much of the mobile and 2D indie market they'd be much more secure for advanced 3D, which is probably too difficult to get in a reasonable amount of time so as to be priority #1.
>>16431283
>There is a reason why 2d in 3d is what I went with.
Like anubibro says, It would be smarter (and all-round more practical considering my skill level) to start simple in Godot, with a 2.5D game at most. Thus, the temporarily limited 3D and OOP aren't immediately relevant. With a more humble initial aspirations but plans for the future, my table would be:
Godot Pros
>FOSS
>No licensing
>Long term payouts
Godot Cons
<Insufficient documentation
Unity Pros
>ECS
>Mature 3D
>Short/mid term payoffs and big plugin/module market for things above my head
Unity Cons
<Propietary and closed source
<Licensing and legalese
<Unity
You have helped me figure things out by challenging me, I am now more secure in my decision. Thank you.
0c4143 No.16431330
>>16431326
i don't know what i'm doing too anon please
fe6bee No.16431341
>>16431328
Solid plan.
Happy to assist, and I hope we have more cooperative socratic style debates in the future
>>16431330
Too tired atm to get involved in the needed discussion. I'm sure someone will sort u out with what needs to be said tho, lurk a bit
1b6efe No.16431356
>>16431330
Why do you want to use Construct Classic? It's old and doesn't meet your requirement of supporting platforms.
It's open source, so yes, it is possible. Yes, it is a lot of work. No, it is not worth your time.
You wont just be porting the d3d graphics to opengl, you'll have to port other components, like window creation, input handling, etc. as well.
At the end of it, you'll have written enough code to make your own multi-platform engine.
I'm guessing you have some nostalgia for toying with Construct Classic in the past and want to make it available to other platforms. That much is fine, but you can forget about accomplishing that if you don't learn how to program first.
7a2c94 No.16431413
>>16431330
Learn how to program before you try and do anything. It's not meaningful to talk any further about the engines you want to work on if you don't know how to do any of that work. You don't have enough context to know what is a useful amount of time or not. If you were capable of doing any of the things you have been asking about you would know the answer and wouldn't need to ask in the first place.
Start looking up tutorials and writing basic programs. Learn about graphics. Then you will have a better idea of how to go from where you are right now to the fantasy of where you want to be.
fcf82c No.16431566
>>16431105
You want to learn how things work under the hood or to make game?
Pick only 1
f5638a No.16431599
15243d No.16431674
>>16429411
britbong as in the britbong(eggbong/mrbtfo)? or just a british accent?
15243d No.16431701
>>16429411
I also have no story aside from
>possible disgruntled employee goes postal at work
because that's all there is in gameplay atm, guy shoots from elevator and pops the boss of each floor. same with plans for having a "story" mode and freeplay mode, one where the level is prebuilt and able to be tailor made for the story allowing for alot of freedom with level design while the freeplay mode would be the random level generation that currently exists.
215d14 No.16431776
>>16429343
Do you use some kind of spatial data structure as well for the navigation?
a0fe39 No.16431982
>>16429300
Except for the fact that for 2D games, Godot is infinitely superior. GameMaker only continues to be relevant because of it's drag-n-drop programming. But even that will get you laughed at by real programmers because making a game that way impacts the engines performance.
13ae87 No.16431988
>>16431982
>drag and drop
Does anyone really even use that for Game Maker anymore? It's a legacy feature, but 99% of all tutorials are for the GML language. You can talk about the quality of the language, sure, since it's not good, but I don't think Drag and drop is really that valid a criticism.
a0fe39 No.16431990
>>16431988
I've seen too many people admit to me that they use GameMaker's drag and drop feature to quickly push out a prototype.
215d14 No.16431991
>>16431982
>fine depending on what game you are making
>get you laughed at by real programmers
Real programmers don't give a fuck what tools you use as long as you get the job done you poser faglord.
a0fe39 No.16432002
>>16431991
That's a bunch of bullshit, programmers are extremely nitpicky and will get into hour long arguments over the smallest things like if you set up your curly braces like:
function() {
}
or:
function()
{
}
13ae87 No.16432006
>>16432002
Second method is superior because I like symmetry.
215d14 No.16432019
>>16432002
Those are all also massive faglords not worth engaging with. I've worked a lot with the nitpicky types and they are absolutely awful to deal with. Nothing gets done because all they do is talk shit, they never expand their horizons because they always know best and when they do they abandon everything they knew previously because of The Best New Thing™ and everything else sucks dick. The best programmers are pragmatic and pick whatever tool gets the job done. If you are making simple games GameMaker will suit you perfectly fine. I have a friend who keeps making shitty clicker games and all he needs is GameMaker, he wouldn't use the resources of a better engine and neither would many that get stuck on using Godot, Unity or UE4 because those engines are beyond their capabilities.
a3c276 No.16432021
>>16431674
Just a British accent, got anything in mind?
>>16431701
Fair enough, I could always do enemy sounds, grunts, etc. if you want?
38b3f1 No.16432023
>>16432006
Wrong, the first method is a lot better
fcf82c No.16432041
>>16432006
consider suicide
ba3bf9 No.16432065
>>16432002
I accept both as long as they are consistent within a project.
Personally, I started with having { on a new line when I first learned programming, because that was the first style I've seen and it stuck with me. When I went to study CS, I begun to put the { on the same line as the expression, because it saves you tons of space when you need to put some code on a sheet of paper during an exam. I just started using it everywhere, because why not?
I watched a series of interesting talks about programming (yes, there are more than just the DOD talk by Mike Acton) and one argued in favor of staying within column 80 and why it's not an antiquated concept. He made good sounding points about programming vertically as opposed to horizontally, so I gave it a shot and I liked it, but putting the { on the same line doesn't work cleanly with a vertical layout. So I'm now back to putting the { on a new line and I think it'll stay that way, because I put it there for reasons other than taste.
d79eb7 No.16432090
>>16432065
The only sound argument for 80 columns is rotating your screen to increase how many lines of code can be on screen at a time.
215d14 No.16432102
>>16432090
80 characters is actually reasonable for pic related as well, at 1080p (although I usually use 100).
d79eb7 No.16432130
>>16432102
Good job sticking to 80/100 characters, anon.
215d14 No.16432145
>>16432130
I just use it as a guideline, I have my limit at 120 characters.
2304ef No.16432152
>>16431141
>ears
Is she an elf or something?
>>16432065
>staying within column 80
This is new to me. But the inline { wouldn't change much and still conserve vertical space. I don't get it.
13ae87 No.16432156
>>16432152
>This is new to me. But the inline { wouldn't change much and still conserve vertical space. I don't get it.
I think they think that you should put the brackets in a separate line from the rest of the code. Something like
function()
{
code
more code
};
versus being
function()
{code
more code};
which is what I use.
d79eb7 No.16432162
>>16432152
>there are STILL people on this board who don't know Shinobu
Has it been 18 years since the show aired or something? You do know we have a rule against underageb& here on /v/, right?
>>16432156
>function()
>{code
>more code};
Now I understand that the argument outlined in >>16432002 is autistic, but you deserve an ISIS-style execution shown to everyone who ever joins a programming class.
215d14 No.16432171
>>16432156
>function()
>{code
>more code};
9e1a5f No.16432176
>>16432156
>function()
>{code
>more code};
>which is what I use.
Terry's spirit have mercy on your sould
>>16432162
The anime is shit though, why do you expect everyone to have seen it?
2304ef No.16432181
>>16432156
Actually the question is between
> function(){
> code
> }
versus
> function()
> {
> code
> }
I don't know what the fuck "{code" is, don't ever type that again anywhere.
>>16432162
I know Shinobu exists, I just haven't watched it and didn't know she was some elf with liver issues. I haven't watched all anime from >10 years ago. If it's so good, how come I've never heard of it outside of /v/? :^)
>>16432171
function() {code;
more code
;
}
;
;
ea63da No.16432185
>>16432023
>>16432041
>>16432065
Using a newline curly helps visually when reading the program. When you have conditions nested inside loops nested inside functions, it's hard to tell exactly where you are. The braces give a space to say "here's the start/end of that".
It's all preference, the most important thing is all files use uniform formatting.
>>16432156
Why not put everything in one line? No point in wasting those precious newlines.
2304ef No.16432186
>>16432181
Seriously, what possible merit can there be for newline { ?
13ae87 No.16432187
>>16432162
>>16432171
>>16432176
Anon was right about programmers getting into retarded arguments over trivial shit.
I like my code being as concise in space as humanely possible. This might go back to my first programming foray being in Basic.
Might as well be screeching at me for not using the dark mode in my IDE. This shit is why I'd never even consider making my work open source, it would just result in endless autistic screeching, not because of functionality but because it doesn't look nice to you.
2304ef No.16432192
>>16432185
> When you have conditions nested inside loops nested inside functions, it's hard to tell exactly where you are. The braces give a space to say "here's the start/end of that"
That's what indentation is for.
>>16432187
>not using the dark mode in my IDE
Don't your eyes get tired?
13ae87 No.16432196
>>16432185
>Why not put everything in one line? No point in wasting those precious newlines.
Usually a readability issue. If I can, sure, I'll put it in one line but if there's multiple things going on, I'll break it up to make it more readable.
>>16432192
>Don't your eyes get tired?
Not really, no. My eyes get more strained from dark themes, actually.
ba3bf9 No.16432204
>>16432152
>This is new to me.
The column 80 rule has its origins in technical necessity. Way back the monitors on your mainframes couldn't display many characters per line, so programmers did well to layout their code in a manner that ensured that you didn't have to scroll horizontally to see what the code is doing.
>But the inline { wouldn't change much and still conserve vertical space. I don't get it.
The problem of the inline { isn't about the column 80 rule specifically. It's about what happens when you use a vertical layout for your code and you have argument lists. You make the beginning of your function bodies harder to find, because they have the same level of indentation as your argument list.
int Something(
char *Blah,
float Whatever,
double Banana,
char *SomeText,
int Index) {
int Result;
int Temp;
char *Buf;
// ...
}
// vs
int Something(
char *Blah,
float Whatever,
double Banana,
char *SomeText,
int Index)
{
int Result;
int Temp;
char *Buf;
// ...
}
2304ef No.16432213
>>16432204
Oh I get it. If my arguments were long enough that I'd multiline them, I'd also put the brace in a new line without thinking it. It's inline as default for me though.
9e1a5f No.16432236
>>16432204
To me that makes the header and the body look like separate things when reading fast. I tend to do something like this if I need to do vertical arguments:int Something (
char *Blah,
float Whatever,
double Banana,
char *SomeText,
int Index
) {
int Result;
int Temp;
char *Buf;
// ...
}
ba3bf9 No.16432289
YouTube embed. Click thumbnail to play.
>>16432090
>The only sound argument for 80 columns is rotating your screen to increase how many lines of code can be on screen at a time.
LOC isn't the be-all end-all metric for efficiency. Having more stuff on-screen doesn't help, if its structure doesn't lend itself to being parsed quickly. It's not that 80 is some sort of magic number, but it's a good guideline. Vertical code layouts (whether they're 60, 80 or 100 col/line) have some inherent benefits over horizontal layouts. >>16432102 mentioned one: on my 1440p monitor I can view 3 files at once (or the same file in up to 3 places) without anything disappearing behind a scrollbar.
Embed related is the talk I mentioned. Interesting, charismatic guy and he covers other subjects as well so I recommend it. The part about proper naming and what the correct level of abstraction is is absolute gold and should be beaten into every programmer's head, if necessary.
>>16432236
Watch the talk. He mentions that one too. It has one downside mine doesn't: your beautiful alignment of the char *Blah with the opening parenthesis (assuming it wasn't coincidental) isn't stable under refactoring. If the function is renamed to something with a different length, the alignment gets broken. And no, "I can fix it by hand" isn't an argument if you either use an IDE (which can rename the function from within another file, which would force you to review every single refactoring site by hand whenever refactor anything) or if you work with other people, because you can't expect them to be that autistic.
fcf82c No.16432297
>>16432156
>function()
>{code
>more code};
You meant ()=>{code more code}; right?
fcf82c No.16432308
>>16432204
>Way back the monitors on your mainframes couldn't display many characters per line
I assumed it was for dot matrix printers
ba3bf9 No.16432315
>>16432308
Possible. I only know its origin is technical necessity, so I assumed its monitors. But maybe it's both, because old monitors were narrow and had really low resolutions.
ba3bf9 No.16432319
>>16432298
Saved.
I have never seen anyone use that abomination in the wild. And that's a good thing.
fcf82c No.16432320
>>16432289
>And no, "I can fix it by hand"
You guys actually do this? Manually identation?
Ever heard of Document.Format or equivalent?
Ctrl+Shift+F in Eclipse and I believe Ctrl+M+D in Visual Studio (long changed to eclipse pattern because I came from years of Java)
9e1a5f No.16432333
>>16432289
>assuming it wasn't coincidental
It was, pic related is what it would look like. I've seen people align things according to the procedure name and I did the same in the beginning, but yeah it's too much of a pain in the dick when you want to refactor a little and have to readjust them all. Plus some function names just end up kinda long and it looks like shit to have the arguments so far to the right.
ba3bf9 No.16432356
>>16432320
Of course not and that was the point.
The problem with auto-formatting systems is that there's a limit to how configurable they are. From everything I've seen, clang-format is the gold standard in terms of flexibility, but it's not available for every language and even it has its limits.
>>16432333
Looks like a perfectly fine alternative to mine to me. You can chalk up using this one over mine to personal preference.
fcf82c No.16432418
>>16432356
Eclipse's is pretty top notch
Visual studio's is so so, but enough for my preferences
a785a0 No.16432572
>>16432002
The ones who get picky about those are people who have never completed a single project. Please disregard them.
>>16431154
Godot is very limited and buggy for 3d. It's borderline rage inducing to use since it fucks up the models that I can export easily in Unity/UE4. You're better off working in Unity/UE4 and transferring that workflow into other engines.
c7ff86 No.16433404
I'm trying to push as much customizability in a 16x16 sprite as much as I can. It's actually quite fun.
d106e9 No.16433429
>>16433404
Are you drawing everything all at once, or do you create a preset number of animated sprites from what they have equipped?
c7ff86 No.16433442
fcf82c No.16434038
OOF
Pressing I in the inventory search bar closes the inventory because I is the hotkey for opening/closing the inventory, Thanks Unity. You also move while typing stuff
Either way, now you can search for items in the inventory by name or tags, also !tag will hide anything with said tag, so you can search for Oil while not finding Oily by searching "oil !oily". Will probably make a & variant for required tags, as tags currently are "any of those"
Too bad most fucking examples have "I" on it, hopefully I can fix that by tomorrow.
I was hoping to figure out how to show what's each item effect and the recipes base effects before 5/5, but might not be possible
d106e9 No.16434608
No real progress to show off today. Instead, I kept working on little things and tool that will make my life easier in the long run, such as specialized/general container classes and stuff. My approach is to generalize the process as much as possible, eg being very liberal with unit shapes and polygons and stuff, then converting it into fixed-size shapes, then building it into game-specific data, and then finally exporting it to rom data
Not sure why the SMILE RF editor screenshot shit the colors, but this is that one room in Brinstar leading up to Spore Spawn. I like this room for testing because it's very big, only has one room state (eg game events don't affect it), it's found early in the game's rooming list, and doesn't have a ton of enemies (and has a decent number of doors to work with).
The second picture is how I'd have constructed this room algorithmically. In practice, I'd generate a bunch of nodes for a room, depending on size and map constraints, and then weight them to be different sizes, using factors like "keeping passageways 6 tiles high" and "screen borders are 2 tiles wide". I'd have a bunch of regions to work with (red). Some would be connected by passageways (green), and adjacent pieces would connect pretty freely.
Anyways, none of this is implemented, but that's my loose plan. Figured I'd just post an update since it's been a few days.
622cc5 No.16434692
Sound detection is probably too difficult atm
6d1ac3 No.16434721
>>16434692
Looks like I'm not the only one making a Theif inspired stealth game.
460969 No.16434789
>>16434692
Looks more like they have instant vision and chase a little too fast. Sound should be fine but you have to remember that in order to escape sound detection you have to move slowly, which means you need time to slowly move away from the last spot they heard you before they can reacquire visual.
460969 No.16434795
>>16434789
>>16434692
If you wanted to reduce difficulty while adding realism, you could find some way to make sound-location less precise. They know they heard you from a general direction and move that way, but they don't actually know where you are.
2304ef No.16434870
>>16434784
They move kinda… angularly.
329c3b No.16434909
>>16434870
not entirely sure what i'm doing wrong with it
in the shader
float4x4 quaternion_to_matrix(float4 quat)
{
float4x4 m = float4x4(float4(0, 0, 0, 0), float4(0, 0, 0, 0), float4(0, 0, 0, 0), float4(0, 0, 0, 0));
float x = quat.x, y = quat.y, z = quat.z, w = quat.w;
float x2 = x + x, y2 = y + y, z2 = z + z;
float xx = x * x2, xy = x * y2, xz = x * z2;
float yy = y * y2, yz = y * z2, zz = z * z2;
float wx = w * x2, wy = w * y2, wz = w * z2;
m[0][0] = 1.0 - (yy + zz);
m[0][1] = xy - wz;
m[0][2] = xz + wy;
m[1][0] = xy + wz;
m[1][1] = 1.0 - (xx + zz);
m[1][2] = yz - wx;
m[2][0] = xz - wy;
m[2][1] = yz + wx;
m[2][2] = 1.0 - (xx + yy);
m[3][3] = 1.0;
return m;
}
float4 toQuaternion(float yaw, float pitch, float roll) // yaw (Z), pitch (Y), roll (X)
{
// Abbreviations for the various angular functions
double cy = cos(yaw * 0.5);
double sy = sin(yaw * 0.5);
double cp = cos(pitch * 0.5);
double sp = sin(pitch * 0.5);
double cr = cos(roll * 0.5);
double sr = sin(roll * 0.5);
float4 q;
q.w = cy * cp * cr + sy * sp * sr;
q.x = cy * cp * sr - sy * sp * cr;
q.y = sy * cp * sr + cy * sp * cr;
q.z = sy * cp * cr - cy * sp * sr;
return q;
}
void setup()
{
#ifdef UNITY_PROCEDURAL_INSTANCING_ENABLED
float4x4 rotation = quaternion_to_matrix(toQuaternion(0, positionBuffer[unity_InstanceID].w, 0));
in c#
public static float vectorAngle(float x, float y)
{
if (x == 0) // special cases
return (y > 0) ? 90
: (y == 0) ? 0
: 270;
else if (y == 0) // special cases
return (x >= 0) ? 0
: 180;
float ret = math.degrees(math.atan((float)y / x));
if (x < 0 && y < 0) // quadrant Ⅲ
ret = 180 + ret;
else if (x < 0) // quadrant Ⅱ
ret = 180 + ret; // it actually substracts
else if (y < 0) // quadrant Ⅳ
ret = 270 + (90 + ret); // it actually substracts
return ret;
}
and somewhere later
angle = vectorAngle(dir.x, dir.y);
7094db No.16434947
>>16431141
Shinobu a cute. A CUTE!
d79eb7 No.16435109
Demo Day's tomorrow, but I'll be busy for most of the day. I'll make some time to post my project, but probably won't be around much after that.
Do we have a gameplan on who's baking the thread? I can't do it this time. There's a guide on http://8agdg.wikidot.com/demo-days so as long as you pay attention, anyone should be able to do it.
I should also probably update that page to add the newer autumn-edition image I made last time.
215d14 No.16435163
>>16435109
What games can we look forward to play?
dd47c6 No.16435231
>>16435163
I will finally be posting a demo of Phantom Path this time.
Can't wait to start dealing with all the bugs people are going to immediately run into.
881988 No.16435252
>>16435163
Pretty sure
>OP made that brainfuck thingie, which is more of a toy for programmers but whatever
>there'll be a new update for Beelzebox
>cookinganon and bro will have a new update for Everyday Life
>the anon who made something for Ludum Dare last weekend will probably post it there
Maybe/likely
>shinobudev might have an update
>that one anon that is working on a game that looks like Ultima IV posts occasionally, he might have something
>this anon >>16433404 may have a demo
>the other gamejam people >>16422623 though I kinda feel like they're new to these threads so who knows
>>16435231
Oh fuck yes, I've been looking forward to testing this baby.
Your development speed is really goddamn fast as well, didn't you start development on this in early 2018?
dd47c6 No.16435277
>>16435252
Yes, somewhere around that time. The earliest video I have of it is from March 2018. It wasn't supposed to be a puzzle game at first, hence the bullet hell particles.
2304ef No.16435291
>>16435277
Unity or Godot?
329c3b No.16435319
>>16435291
>propriety software
9e1a5f No.16435329
>>16435291
>he doesn't know
881988 No.16435334
>>16435319
YUME and YUME2 are still proprietary, though.
dd47c6 No.16435435
215d14 No.16435482
>>16435231
Oh fuck that looks awesome.
>>16435252
>>the anon who made something for Ludum Dare last weekend will probably post it there
Yeah I'll be posting it since I've continued working on it since the gamejam and think I will be doing so for a while. Hope people don't mind even though I haven't really posted here since I stopped working on my educational game.
881988 No.16435517
>>16435482
>Hope people don't mind even though I haven't really posted here since I stopped working on my educational game
Ah, you're the guy who was making that math RPG? I see no reason why anyone would mind, you've posted plenty of times in the past and aren't blazing in here with HERE'S MY DEMO DONATE TO MY PATREON PLS only to stop posting right afterwards
215d14 No.16435539
>>16435517
Yeah, Quizzard's Quest. Thanks anon, looking forward to tomorrow.
Second picture is what I'm working on right now, we're redoing the entire dungeon generation of Life Pact using Delauney triangulation to build corridors. In theory at least, I haven't been able to get it working yet.
1b6efe No.16435551
>>16435482
I post here all the time but pretty much never post progress updates on my own project because I just don't care to. And shitposting gives way more (You)'s anyway.
2304ef No.16435886
f3b9f5 No.16436344
what't the best way to get a different message to display when interacting with signs for example? Differentiate between them before rendering (making multiple that all use the same sprite) or is there a better way?
881988 No.16436385
>>16436344
That is going to be heavily dependent on how you implemented tiles/objects. I see you have stairs, how do those work? Presumably they have an extra variable that points at an X/Y coordinate to teleport to. You can have similar extra data on signs that's just a string of characters. Or have a long list of messages somewhere, and just point at a message ID in the sign.
1b6efe No.16436417
When will demo day start?
>>16435109 http://8agdg.wikidot.com/demo-days mentions "12am at timezone discussed in cyclic agdg thread" and I'd like to know which one that is.
9e1a5f No.16436424
>>16436344
There's a lot of ways to do it. For example make a separate array of all the sign contents, and when you read a sign, the appropriate text is searched from the array based on coordinates or something. That way you wouldn't need to store anything in the signs themselves.
f65715 No.16436426
>>16436417
midnight tonight, I'll have it up for a few days to a week if needed
fcf82c No.16436428
>>16436426
>midnight tonight
my midnight or yours midnight?
881988 No.16436446
>>16436426
>which timezone?
<midnight
bf53dd No.16436632
My motivation always dies once all the interesting technical things are solved, and the rest is level design, polish, and finding better assets.
Im not sure if this is a good or bad thing. On the one hand, like this i will never make game, on the other hand, i avoid wasting a lot of time on a project that is no longer improving a relevant skill and will likely never have any significant audience.
7a2c94 No.16436699
working on new map for DD
a42e6f No.16437224
>>16434038
Are you using hierarchical system to categorize food, or is it set-based?
http://wiki.c2.com/?LimitsOfHierarchies
fcf82c No.16437241
>>16437224
Food got a ton of tags, for instance, carrots have
Carrot, Vegetable, Root, Tuber
Recipes have slots that requires/accepts/forbids tags
I think that counts as set based?
hierarchical system would be like how species are categorized?
b9f6bb No.16437253
Is there any particular engine that would be best for making a 3D fighting game? I know Unreal 4 seems to be getting used a lot these days (Tekken, Soulcalibur, etc) but maybe there is something better? Unreal seems to have a bit of extra input latency inherent to it and I'd like to avoid that.
a42e6f No.16437289
>>16437241
Tags/sets are the alternative to hierarchies where one trait is higher than another despite being orthogonal
8a7f02 No.16437308
>>16437253
UE 4.19 reduced the inherent lag to ~2 frames. Which is obviously not perfect, but is better than it used to be.
d106e9 No.16437412
So looking at various source codes, a Rectangle object looks like it can have negative W/H due to how floats and shit work, but a lot of functions don't seem to work properly if those values are negative. Does this actually come up a lot in practice? Admittedly, a rectangle with negative dimensions is more mathy than practical
b15376 No.16437429
>>16437253
make your own engine
fcf82c No.16437528
5/5 Release candidate ready
>Improved item search, now accepts & for required and endings in " for precise, for instance, &Oil" will not find Oily as previously did
<Added a "Auto fill the tag filters for me" button in the slot interface, it's the + button to the right of the slot tags
>Improved the amount picker to now have an automatically focused input field that also accepts enter as OK and will not vanish if the input field is focused even if the mouse is away
<Utensils now have their own recipes
>Reduced time multiplier from 1000 to 250, so you can actually read the effects instead of just clicking everything asap
<Added a search and filter for the recipe selection, you can just drop some items and see which recipes have at least 1 slot that accepts them
>Increased the amount of free ingredients to a fuckload, changes little as currently there's no minimum quantity implemented, you can make 1g of salad
Known issues:
SomeLots of effects don't activate at all, you spend points but nothing happen. It seems that if a buggy effect fails to activate, no further effects will activate. Will dedicate tomorrow to attempt to fix this
You can burn fermented and raw preparation recipes. Those will have their own system, but it's not implemented
6d1ac3 No.16437531
Question about Blender 2.8. How do I bake a procedural texture to an image? I've tried the online tutorials but that just gives me a black texture.
The process I've followed that doesn't work.
>changed to the Cycles renderer
>created a new image in the UV editor
>added a texture node to my material node editor
>set the image for that texture node to the image I created
>selected the texture node
>in the render tab, clicked "bake"
>after the texture bakes I get a black texture that covers the area covered by the UV of the object.
2304ef No.16437759
>>16436632
What a satisfying take on pacman gameplay.
c40277 No.16437809
>>16435231
looking forward to it
7601aa No.16437919
>>16430306
Well I'm a big ol' dickhead, huh? Gonna make a demo tomorrow at least to test how my systems are working so far. Submission will be late. posted 4/5
c51166 No.16437990
>>16437308
That's good to hear, so I guess the extra lag is on the developer's side then.
>>16437429
Not viable.
From what I can tell, modern fighting games still tie their gameplay to frame rate. I assume this is to ensure absolutely perfect, consistent, reliable hit detection on moves and combos, but I'm wondering if such a practice might not actually be that necessary these days. Does anyone think a variable frame rate fighting game could be done well, or is it best not to risk it?
c51166 No.16437992
>>16436632
Your lawnmower sounds idle, gotta get a sound effect of that sucker at full blast, and perhaps dynamically switch to the idle sound effect if you stop moving for too long.
6d1ac3 No.16437998
>>16437531
Nevermind, figured it out. I needed some light to be able to bake the texture, so I ran it through an emissive.
1b6efe No.16438101
>>16437990
>From what I can tell, modern fighting games still tie their gameplay to frame rate. I assume this is to ensure absolutely perfect, consistent, reliable hit detection on moves and combos, but I'm wondering if such a practice might not actually be that necessary these days. Does anyone think a variable frame rate fighting game could be done well, or is it best not to risk it?
Online multiplayer will require your game logic to be deterministic. So you will always be stuck to a constant gameplay tickrate.
That said, there's no reason why rendering framerate needs to be tied to gameplay tickrate. You can simply run the game logic itself at a high rate (e.g. 240Hz) and then when rendering your render the last gameplay tick every time. Or interpolate between ticks, if you want that bit extra.
However, integrating this into existing engines might be a bit of a pain.
1b6efe No.16438183
I'm gonna go ahead and post the demo day threads on /agdg/ and /v/ in a few minutes.
1b6efe No.16438190
It's up.
>>16438187
>>/agdg/33714
1b6efe No.16438191
bf53dd No.16438794
>>16437759
It's a remake of an iPod Touch game i used to play 8 years ago
>>16437992
Yeah, that is up next. I've spent a lot of time on Freeaudio but didn't really find something that fits well.
d49774 No.16439404
Made some progress on my editor
9e1a5f No.16439482
>finally doing opengl stuff for my new engine
>mbw matrices
>can't get perspective projection to work correctly
>copy the matrix code from my old engine
>still can't get it working for some reason
>literally copy paste from a tutorial
>doesn't work
>look up GNU math library
>can't make any sense of that massive pile of cancer
>see a makefile
>delete GNU math library
Fuck this shit
Tutorials aren't helping, I don't want to read a book about matrices, I just want to draw sprites why do I have to deal with this nonsensical shit, I don't want your C++ OOP abomination, I don't want fancy 3D perspective camera shit, just give me the the matrix operation for projecting into a 2D aspect ratio or whatever, that's all I need, why does this need to be so hard, god dammit
In my last engine I got it working accidentally by doing weird hacks until it clicked, then I made sure never to touch it again.
215d14 No.16439612
Managed to implement triangulation and getting the gabriel graph. Now all I need to do is calculate the EMST and I can start generating corridors.
c60ba5 No.16440753
Making a demo level, materials now fade and light layers are being used. Gridmaps do not have lighting layer modifiers or variables for masking or setting their layer property, and I don't know how to access the masking property of individual meshes on a gridmap. The green color of the player character is lighting using layering, there are 3 layers in this scene. Most meshes and pawn's sprite are lit by one layer, the ones around the lava pit are lit by 2.
An idea I had on occlusion was to split my level chunks into different branches for each segment of geometry and for each time my camera is updated to switch modes and distance, it runs a raytrace for each mesh in that branch that is visible to the camera and if a mesh is in front of it or isn't in view, hide it or enable distance fade in the material.
329c3b No.16440779
i did a ton of shit yesterday to manage to rush into the demo day
got the AI to attack via the tree, and the shit even gets serialized
the tree now has support for events, currently only OnGetHit
had to reimplement my ID system so that i can actually support more than one instance of the same character existing
087ceb No.16441060
What's the correct way to do interpolation and fading and stuff? Like let's say I want the camera to smoothly change position from point A to point B, where should the movement code be?
My current plan is/was to have some array of animation information, so if I want to animate some value I'd just add it there and only have to check that array in the game loop, but there's too many things that are not fixed in memory and thus can't be given a generic pointer to.
Or what if I want to have a fade out animation for sprites, should I add a special fade out mechanic to every single shader as opposed to just changing the alpha value?
2304ef No.16441223
>>16441060
You mean like sine wave?
329c3b No.16441303
YouTube embed. Click thumbnail to play.
so apparently there was already an actual 3d bionicle fangame that got abandoned and shared all of it's assets for free
http://www.bzpower.com/board/topic/13995-project-mnog-3d/
as long as i don't care about being sued by lego i can totally replace my assets with these
881988 No.16441315
>>16441060
You implement splines, then set position or alpha value or whatever based on somespline.get(progress).
This is a very simple spline example which my screenshot is based on: http://blog.ivank.net/interpolation-with-cubic-splines.html
d8607f No.16441317
>>16441060
For something like fading a sprite I'd just lerp the alpha value over time but for more complex stuff you definitely should use splines like >>16441315 said. If you're using an engine like Unity just download a tweening lib and be done with it. I see no point in rolling your own tweens unless you have very specific requirements.
087ceb No.16441324
>>16441223
>>16441315
>>16441317
I'm not talking about the transition algorithm, I mean where do I actually put it without hardcoding fade-related data into every data structure and an if/else condition and a fading loop function for every separate transition I want to do? Where does the transition function get called from and where does it get it's state?
d8607f No.16441331
>>16441324
Really depends on the rest of your engine. An ECS system might have a fade component where a system handles all types of fading. Or you push an event that contains what entity and how to fade it. Or you have some kind of fading lib that you call from that specific entity/at your fade fixing point that will push a fade job to some queue. Or just run the fade code in your entity.
2304ef No.16441357
>>16441324
>>16441331
Another option is having a single "fader" object that handles the calculations, receiving the necessary information in the parameters of the method, something like:
class fader {
public 3Dpos sineFade (3Dpos startPos, 3Dpos endPos, float transitionRatio) {/*…*/}
}
//then
static fader myFade=new fader (); //one global fader, maybe?
onTickOrWhatever () {
myObj.setPos(myFade.sineFade(myObj.getPos(), myObj.getTarget(), animationRatio))
}
meh.
dd47c6 No.16442041
Had an accident when texturing trees, and ended up with a different art style. What do you think? Keep or not?
If I keep this, I'll add more detail to the ground and vegetation as well.
881988 No.16442052
>>16442041
The fade from top to bottom? I like it. What's it look like at the secret passages though?
edbd78 No.16442072
>>16441303
>being sued
unless you're stupid and take money for it and if the assets are all recreations (and not ripped straight from one of their games) worst will probably be a c&d, if they even bother with that depending where you are.
companies usually only get extra salty when you use their shit without paying or worse make money of their shit.
>>16442041
doesn't look bad, just a bit "off" for me, too "2d" compared to the rest if it makes sense? bit of structure or outline might do the trick.
bf53dd No.16442082
>>16442041
You should really consider a lighting system, it is a perfect match with the torch theme and would add to the comfyness. I would also think about only showing things in line of sight of the player, at least clearly, like in pic related.
While im at it with the unsolicited advice, MSAA would be a good choice of antialiasing for your game, much cheaper than SSAA and you don't have any textures or high fidelity shaders, so it would look just as good, or better since you can use more samples.
dd47c6 No.16442095
>>16442052
Passages look too obvious and a lot of trees clip with each other right now, but I think I can tweak them to look better. Pic related is what a typical secret passage looks like right now.
>>16442072
I think it's because they're the only thing that have gradients right now. If I add more detail to the ground and other props, it wouldn't contrast as much.
>>16442082
My engine already supports lighting, so I might experiment with that. Maybe some bloom would fit here as well…
329c3b No.16442127
YouTube embed. Click thumbnail to play.
>>16442072
good enough for me, i already have a job
6d1ac3 No.16442357
>>16442041
They both look good but I prefer the older style. With the gradient it's now its clear that the trees are only around the edge of the play area and that beyond that is just a monochrome green expanse. Maybe it would look better if more trees were added behind the old ones
1f48b2 No.16442605
>>16442095
>I think it's because they're the only thing that have gradients right now. If I add more detail to the ground and other props, it wouldn't contrast as much.
no, I mean they look 2d compared to the rest, like doom-sprites in quake for example. might only be because it's a screenshot and in motion the look more 3d due to the camera moving.
if not, 2-3 vertical lines or blacked edges to simulate perspective/depth might fix it
bf53dd No.16442842
>>16439404
Looking good. How do you draw the outline, postprocess shader or just oversized geometry? While you're at it with ImGui, i can recommend this library:
https://github.com/CedricGuillemet/ImGuizmo
I used in for my level editor, webm related.
d106e9 No.16442858
How can I find the smallest circle that contains a random assortment of non-unit points?
>Generate a bunch of nodes with random coordinates
>Each node connects to a bunch of other nodes
>Want to find the range and normalize it to a unit
>Unit can then be scaled and transformed
6d1ac3 No.16442870
>>16442842
How did you make the grass? It looks really good.
ba3bf9 No.16442898
bf53dd No.16442917
>>16442870
Thanks, i render a single point cloud, one point per grass blade, then turn them into triangles in the geometry shader. It samples a perlin noise texture at different rates for "random" color, height and wind influence. The wind is just an offset of the upper vertex of the triangle.
6d1ac3 No.16443103
8eac2a No.16443656
Comfy talk about algorithms and actual nice progress on threat. Is it the eye of the storm?
Finally, I've made any progress today.
>Compiling code with wineg++ and LLVM.
<Missing LLVM windows headers
>Compiling LLVM from sources
<It won't include headers
>Compiling LLVM with wineg++
<Missing LLVM windows headers
I've given up on compiling natively. I won't be able to fix LLVM without C++ knowledge.
Installed Windows and Visual Studio on virtual machine. After small fixes I've managed to run 1 project out of 4.
Working on reviving Dungeon Craft editor. It has some terribly outdated libs.
d106e9 No.16443778
Made a script that receives a boolean value for each screen (16x16 tile group) as to whether it's "solid" or "air". Each "air" screen then merges with other adjacent air screens and creates appropriate borders. This then gets converted several times down to the proper ROM bytes.
Took all day and it doesn't even completely work, but the proof of concept works, which is what matters
1b6efe No.16444156
I managed to find out why my UI was being rendered incorrectly (hall-of-mirrors for my linux setup, and just plain black for many users).
I turned on alpha blending for the entirety of the UI draw, but the shader that creates the glass effect wasn't supposed to use blending. (It manually blends using mipmapping to create a blur effect.) Turning off the blending for just that draw call fixes it.
Turns out that whilst vertex shader inputs have extra data added to them if you don't supply a complete input (e.g. if a shader takes a vec4 color and you supply a vec3, it appends an extra constant value), the fragment shader outputs don't follow that same rule, containing undefined values instead. The glass effect shader program outputs only a vec3, because it wasn't meant to do any alpha writing. So it ends up blending with an undefined alpha instead.
I'm not too surprised by this, but I sure would've liked it if the OpenGL debug output said anything about it.
6d1ac3 No.16444199
>>16444156
Congratulations.
dd47c6 No.16445372
The secret areas looks like this now. They're a bit more obvious now, but maybe that's a good thing. Encourages people to pay attention to surroundings without the need to run into each wall.
dd47c6 No.16445413
>>16445372
Not sure why, but the video appears to be corrupted in Firefox. Here are some screenshots instead.
215d14 No.16445415
>>16445372
Looks pretty good. Another option might be having fireflies in a different color instead of the pillar? A little less obvious but still a decent clue in my opinion.
Got my EMST-graph so now I'm working on generating corridors. I started out doing just from center to center but I think I actually want to find points on the edges of each room, alternatively having arbitrary entry points that could be used for prefabbed rooms.
f3b9f5 No.16445685
>>16436385
>>16436424
yeah so the way stairs worked was shit because I wanted to do it quick to implement different levels a while back so I gave every tile in the game a boolean and created like 10 different version of the stair tile to account for going up and down and put 500 ifs in the collision detection. I do this a lot, where I make terrible coding decisions because it's in the way of a feature I want to put in. Then I spend hours correcting my own shit. And I just finished correcting this shit.
d106e9 No.16445764
>>16445415
Do you know much procgen, and about using "brushes" to create features? I think stuff like Terraria worldgen uses it to like, draw caverns and tunnels and stuff, and then convert them into correct blocks/regions. I was thinking of doing something similar for my own procgen stuff
215d14 No.16445771
>>16445764
No not really sadly. I'm going to try something like it though, maybe some subdivision across my entire map to divide cells into different regions to decide tilesets and such. But I'm not that far along so I don't think too much about it. My next step is adding a random set of edges from the gabriel graph back to the EMST graph, then I'm gonna start bashing down walls between rooms that are right next to each other.
d106e9 No.16445778
>>16445415
>>16445771
Do you mind giving a quick explanation of what your processes are so that I can steal some ideas for my own generator? I'm doing the metroid romhack but the idea can't be too dissimilar I would think
2304ef No.16445781
>>16445413
>video appears to be corrupted in Firefox.
That's happened to me too.
Hey, how much work was making your engine?
215d14 No.16445788
>>16445778
I'm actually just doing like this guy here: https://xbloom.io/2016/04/17/more-complex-dungeon-generation/
The general idea is to just generate nodes across a circle, connect them with some kind of triangulation the reduce the amount of connections depending on how maze like you want your map to be. I'm then going to do like they do in Cogmind (https://www.gridsagegames.com/blog/2014/06/procedural-map-generation/) and try to generate metrics using the shortest path from spawn to goal. This should let me generate encounters and loot off the beaten path that encourages exploration.
d106e9 No.16445795
>>16445788
Okay, that looks pretty cool actually. How difficult was it to do the room/overlap separation? And I'm familiar with the Delauney triangulation part, but I haven't implemented it before, was that easy enough as well?
2304ef No.16445810
215d14 No.16445827
>>16445795
Neither was that hard, just pick the simpler algorithms to start with then do more complex if you need the performance. I used bowyer-watson for triangulation and simple separation steering for separating rooms.
>>16445810
I can get the voronoi using the triangulation but I'm not using it right now.
d106e9 No.16446124
I have a general outline for how I'd apply brushes randomly.
This has a few flaws, such as creating gaps in the map, but for a first pass it seems like an acceptable idea.
d106e9 No.16446276
So I just made a really cool (to me) extension method.
In my previous dev attempts over the years, I've had a Grid<T> class that holds an array, hides it, and then mucks around with boundaries, so you can interpret the data as a rectangular region and do stuff with it. The idea was it could work with heightmaps and such. Because of how it was implemented, it was always really clunky to use.
So it still works basically the same way, but I was able to generalize and optimize it enough that it doesn't need a supporting class, it just works inline on any array. It works by taking an array, the region you want to perform the operation on, and the stride (width) of the array so it can interpret it as a rectangle. It validates it by then reducing the selection to the intersection between both bounding boxes, and adjusting it slightly if the region runs off the end of the array.
Right now it only really works on basic operations (eg flipping, rotation), but this is a great setup for my brush stuff above
9317b2 No.16446598
Invidious embed. Click thumbnail to play.
You won't be ready for Sigma's Mouse Adventure 2 until you listen to this.
329c3b No.16446748
>>16446719
them camera transitions look pretty wonky
f32fed No.16446772
>>16446748
This is a test to see if they would work. I plan for them to be better spaced out and to have a better method of transitioning as well as smooth transitions for some. Plus player movement needs some tweaks but waiting on more feedback on that.
fcf82c No.16448040
Time to download Unity 2019.1 and convert all my systems to the new ecs alpha, fun fun fun
Not to mention making a new project to make sure some random legacy shit I made years ago is not the reason the editor is so fucking slow all the time
This will probably take a whole fucking week
dd47c6 No.16448193
>>16445781
>Hey, how much work was making your engine?
Took a few months to create a simple framework for prototyping games. Since then I've been mostly working on game content and only adding features to the engine when I need something new for the game.
https://kircode.com/post/how-i-wrote-my-own-3d-game-engine-and-shipped-a-game-with-it-in-20-months
655f78 No.16450077
>>16448193
That HAXE looks interesting. How much of that are you using, since you mentioned you did a lot of event handling yourself?
2304ef No.16450107
>>16448193
Cool. How much expertise does one need to do what you did in that time-frame? Are you a veteran of some kind? You clearly know your discreet math. The physics can be looked up online. I don't know how hard it is to make 3D audio in openAL, maybe it's as simple as setting the volume on each audio channel based on a clip's direction and distance? The character animation in particular seems like a daunting task, though maybe I'm just not knowledgeable enough about skeletal systems.
090c57 No.16450274
>>16442842
Since this is just a prototype, I'm just drawing an oversized geometry of my model and with a stencil buffer make it only render the outline, I also had to play around a bit with the depth buffer a bit to make sure the outline is always drawn on top of everything. That library is amazing, thanks for recommending. I'll make sure to add it.
Just a minor recommendation to your gui, instead of using a quaterion for displaying your entity rotation transfrom it into a vec3 of euler angles, it becomes much easier to read (well since you are using ImGuizmo it already kinda of tells your the current angles so I guess you don't really need to do it)
dd47c6 No.16450960
>>16450077
Haxe is my primary programming language for gamedev. The reason I had to handle everything at low level is because I only used the most basic boilerplate framework (Lime, it has stuff like asset management and OpenGL context). If you don't want to do that: there are some mature open source game frameworks available for Haxe. For 2D, see: OpenFL, HaxeFlixel, HaxePunk. For 3D, see: HeapsIO, Armory3D. If you're going low level, check out Lime and Kha.
If you're interested, here's a collection of gamedev-oriented Haxe tutorials that I wrote in the past. Some of them are a bit outdated (they use older versions of certain libraries), but people tell me its a helpful resource nonetheless: https://github.com/keyreal-code/haxecoder-tutorials
>>16450107
Not a veteran by any means. I had no experience with 3D when I started writing the engine. I have been programming from a young age, though.
It is not hard to use OpenAL to play a sound in 3D - you just pass it the coordinates of the sound source, and a few more settings to describe how its played.
Skeletal animation is mostly matrix algebra, and is well documented. You write it once and then forget about it.
All these things can be looked up online individually, there's tons of resources about each aspect. The most "creative" part of the process is in connecting all these sub-systems in such a way that makes it easy for you to use, which depends on how you prefer to work, and what kind of game you're making.
2304ef No.16450969
>>16450960
Nice, your progress is motivates me. Keep it up.
9da838 No.16450988
>Meanwhile, in Vulkan land, nodev is still writing a custom memory allocator for the GPU…
d106e9 No.16451214
>>16450960
Since I'm firmly mucking in enginedev, I've found my flow to be something like
>Have API project
>Have main "game" project that uses the API project / a test case
>Try to do something in the game
>If my API is missing something or is very clunky or retarded, I fix it
>Repeat
>Never actually finish either
d106e9 No.16451933
Need a little hand figuring out a corner case here. As I wrote above, I'm working on a thing that takes any array, semantically treats the values as an NxM Matrix, and then transforms them in some way.
Matrix rotation with a non-square matrix results in the dimensions being swapped. Normally, this wouldn't be a problem, you'd just make a new array. However, since there are other values, and this is done in place, it presents a problem.
The first two groups here show how the matrix gets formed, and what happens when a tranpose (or any rotation, really) is performed on it. The last case ends up overwriting other values outside the transform range, because it's doing a rectangular rotation.
Ideally I wouldn't want to overwrite anything but I don't know what to do, other than force the method to only work on square-sized transformations.
20de6a No.16452161
Shmup anon here.
Flu/cold definitely left and I feel better.
Currently focusing more on gameplay and less on graphics for now.
Recenty worked on weapons, "fan" shot done, flak like shot done too (single projectile that explode in multiple smaller one), currently working on the missile behavior and it's a bit tricky. I already added a specific loop for special behavior, it's hackish and ugly, but I don't have a clear pattern in mind for now, it's still fuzzy.
d79eb7 No.16453242
>>16451933
Think about it in 1D for a second.
Your first example takes a square matrix, which is 16 values at 4x4, and changes the 1D array 0123456789ABCDEF into 048c159D26AE37BF in memory
Second example takes a 2x4 matrix, which is 8 values, and changes the 1D array 01234567 into 04152637 in-place in memory, you merely change the way you draw it for convenience of mind. You presumably don't pad everything into a square matrix with zeros, else your last sentence wouldn't make sense.
Now since your last example is given 8 memory addresses in a non-square array, by the same logic the result would be:
0 4 1 5
2 6 3 7
8 9 A B
C D E F
The only way the function can know to transpose the top right corner to the bottom left corner is if YOU actually DO tell it it is a square matrix. So if you have this problem in implementation, stop doing that, or if it's just in your mind on paper, stop fooling yourself into thinking about values that the function never considers.
8f9b20 No.16453244
>>16443656
>Made Dungeon Craft compile in modern windows and Visual Studio 19.
>It doesn't work for me, but it does compile.
Maybe I just don't know how it suppose to work. But I have no interest in C++ with it's retarded 3 letter names and disgusting practice of using method parameters as output. Also, I have to work with Windows and Visual Studio, which I highly dislike either. So, I dropped Dungeon Craft as a viable source of information for my Godot Golden box project.
>Was reading forums and found C# implementation of a game from Golden Box series.
>Realise I can run it with mono.
>I've found the Holy Grail
>After some time spent on making the mono work
>It won't run either.
At least I can read and debug it comfortably with IntelliJ IDE. Probably I'd need to pirate it after trial period.
7dac3d No.16453531
>>16446719
Almost quit Godot today, someone tested my demo and no meshes were showing up. Apparently fixed by exporting with 3.0.2. Another issue is a memory leak from scene resets. I have to find out how to switch scenes instead. After that, I'm going to script the occluder I wrote about.
Did anyone play the demo? Didn't have it ready for demo day but it is here.
d79eb7 No.16453575
>>16453531
You may get more people playing if you post it in the demo day thread and anchor it to the anchor post, even if it's a few days later. That thread is still stickied, and normal /v/ users actually visit it.
a34643 No.16453785
>>16452338
Limb explosions are now basically working. My one main issue is that when the AI is set up with a navmesh or won't fall over when the legs are blown off.
Anyone know a reason why?
fcf82c No.16453978
>>16453785
I am pretty sure navmesh agents have their physics disabled to not fuck up with the pathfind and make sure they never fall off the navmesh
You could create some sort of transition to change the agent type:
1) Disable the navmesh integration
2) Remove current navmesh agent information
3) Run a animation or let the physics make them fall down
4) Set them to another type of navmesh agent that drags themselves through the ground
5) Enable navmesh integration again
6) Get brouzouf
a34643 No.16454054
>>16453978
Thanks man that's really helpful. Do you know if there is any alternative to nav meshes for AI? Baking them on my terrain is taking literal days and I'd really like fully physics enabled enemies.
d106e9 No.16454302
>>16453242
I think the reason it threw me is because I thought the 5 in the 4x2 was an "anchor" and never moved
fcf82c No.16454324
fcf82c No.16454327
>>16454054
also, you can have a dummy pathfinder character that is invisible and does the pathfind, and the real enemy tries to follow the dummy at all times. That way you can get both. The only issue is corners.
Maybe the dummy spawn many waypoints and the real character tries to follow all waypoints
d106e9 No.16455125
d79eb7 No.16455200
>>16455125
>you copied the OP including my brainfuck code spoiler
>didn't add a new edition
You dun goofed, anon.