3aed77 No.16850038[Last 50 Posts]
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
You can't make a game.
____________________________
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
6f3bdb No.16850041
For any teenager lurkers: learn to code. Now.
Trust me, when your brain is still dough it's much easier to understand it.
T. 27-year-old nodev trying to learn C++
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16850043
What was the name of the shape building technique like pic related?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b0e079 No.16850050
>>16850041
Here's the proper path for learning programming for gamedev
>learn C++ because you're told it's industry standard
>make a text-based game based on "choices" and hard-coded content
>realize this is fucking awful and start looking for shortcuts
>pick up a really shitty engine and try to make a game that way
>realize you're being confronted with limitations and give up on your project
>instead learn graphical/input libraries for C++ and try to make a simple 2D game from scratch
>wtf am I looking at
>Google "C++ Pong Tutorial"
>manage to make pong in cpp
>try again on the graphical APIs
>make an unplayable mess in C++
>try using an engine
>don't really make good progress
>try making an engine in C++
>no progress
>use the knowledge you gained from making C++ garbage, and then apply that to a standard engine like Unity
>now you can make something half-decent
Oh, and I can't believe I forgot to link this in the OP.
http://gameprogrammingpatterns.com/
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c3f6fb No.16850053
>>16850041
>want to make bullet hell in Godot
>got original idea and planned out gameplay mechanics that aren't too hard to implement
>can do everything art related on my own, from sprites and music to animations
>cannot program for shit
>struggle for hours with things that are obvious to others from beginning
>zero progress because I keep hitting brickwalls one after another
Doom modding (without ACS scripting) is the most I can do.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16850058
>>16850043
Constructive Solid Geometry or mesh boolean as far as i know
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
00df9a No.16850062
>>16850041
>I'm too old it's impossible
Age isn't the problem, you're just retarded. It's ok though, most people here are.
>>16850043
Composite or boolean operations.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e89fc8 No.16850063
>>16850050
Exact same progression I went through, but I went on to GameMaker instead of Unity. Now I just use GameMaker as a library/asset manager and write everything game-logic related from scratch in GML, because the built-in drag-and-drop commands are cancerous. It is a good IDE though.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ef5370 No.16850064
>>16850043
I believe it's called Composite Solid Boolean Geometry
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d3f684 No.16850065
>>16850053
what are you stuck on?
I don't know much about Godot, really turned off by its scripting language and UI, but I assume it handles things like collision and motion for you?
For bullet hells, you need:
>Object pooling
http://gameprogrammingpatterns.com/object-pool.html
https://github.com/godot-addons/godot-object-pool
Recommended for enemy ships and bullets
>Trigonometry (If you want bullets to shoot out in circular directions from certain points)
https://www.youtube.com/watch?v=jYsG4I2kqvM
Applying the same stuff you learn here should help
>>16850062
He has a point though, learning to code is easier for teens, especially teens already growing up on modern tech.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d83fa5 No.16850067
>>16850062
>Age isn't the problem, you're just retarded.
this. its not that you're old, its just that you don't have the genetic material to do coding.
some people aren't born to be anything higher than being a tradesmen or a retail worker. someone has to do those jobs after all.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16850079
>>16850041
I'm fortunate in that I find programming a lot more fun (and a lot less frustrating) than actually playing video games, meaning if I get in the swing of things, it's hard for me to procrastinate. And I can bitch for several hours (or days) but I work on figuring it out, kinda like someone would approach a ridiculous challenge in a game.
That doesn't really mean I'm good at programming, far from it, but I think I'm far better at it than I am at vidya.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9adb96 No.16850084
How come these guys can yesdev and we can't?
Why are you letting these guys be better than you at programming and project management?
How come these guys can spend 9 months learning to code and come up with a playable demo of something, but it takes y'all 5 years to learn how to make something presentable?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
00df9a No.16850085
>>16850067
Talent is like wearing rollerblades, it just makes you faster, but that doesn't mean you can't just walk if you don't them. Of course there's some who don't have feet at all, and in that case it's probably better to just do something else. Either way the most important ability to have is either motivation or "discipline". All the skill in the world doesn't help you if you spend all your time reading twitter and playing games instead of working on your shit.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
00df9a No.16850086
>>16850084
It's the effect of living in an echo chamber where everyone pats your ass all day and gives you emotional support and morale boosters. Plus having a religious mindset towards your political alignment, where you feel like you're literally saving the world from evil if you can make other people literally buy your agendas.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16850093
I got stealthy door opening in. It's fun combined with lean. The AI diesn't account for it yet so it's easy to pick them off
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ef5370 No.16850098
>>16850067
The same goes for coders who lack the genetic material for music and art. Thankfully, if you practice under the right conditions your epigenomes for the traits you are lacking will activate and will enable you to do what you couldn't previously.
>>16850084
My sense of pride won't allow me to present garbage, i.e. the result of a nine month coder baby. If they can create something in nine months, imagine what someone who knows what they are doing can do in the same time frame. Chasing that ideal starting as a beginner takes five years.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d83fa5 No.16850100
>>16850085
if you're 25 and you're not already dedicated to coding, you're not gonna get into coding later. its just the way it is. for that matter, at the age of 25 you should already be settled in the field of work that you're going to be dedicated to for the rest of your life. its a pretty good cutoff age for choosing a career.
one of the factors of why is genetic (as in, low intelligence), the rest is maybe its just not what you're really into or simply don't find it appealing even though you have these ideas about a perfect game that you'd want to see.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ef5370 No.16850109
>>16850093
Looking good, messing with the AI is the best part.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16850118
>>16850100
I was an artist with 0 programming experience until my early 20s, and I've never had any problem with programming at all. I had made shitty "games" with multimedia fusion drag and drop shit though.
>what you're really into or simply don't find it appealing
This is the important bit. If you're starting at 25, you should be asking why you never got into it before. Are you sure it's what you actually want to do.
Also wanting to make a game happen is not the same as wanting to actually make it. It's the same as art, admiring great art and wanting to make your own is not the same as wanting to actually draw. The act of creating is not the same as wanting the result, and if you can't enjoy the former then you should seriously reconsider doing it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16850166
>>16850067
No, it could just be old. Try being in your 30s and learning a brand new language unlike the three others you know, or learning a new paradigm like git versus traditional file management.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16850489
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
78189f No.16850534
>>16850041
I think you are right, I should have picked up Python and become a codemonkey instead of learning a modelling program. It's all in the numbers, number one: that's terror, number two: that's terror.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aadd58 No.16850536
>>16850489
crop circles when?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16850543
>>16850536
When you get our next demo and make them yourself :)
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aadd58 No.16850554
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
cafae9 No.16850560
>>16850038
Pulled apart and rebuilt my project, reworking camera code. Have some updated UI screens.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
196819 No.16851096
>>16850043
Shouldn't the not sphere be nested under the cube in order to take a bite out of it?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16851121
>>16850050
This is basically my process of learning when I did college
>Taught a bunch of languages
>Try to develop something in Unity and it goes extremely poorly
>Do some awful text based RPGs or basic GUI shit like Battleship for assignments
>After a year in school and through sheer exposure to coding via writing 80k lines of code for completely unrelated things, begin to understand code
>Try to develop something in Unity and make an FPS framework/template where the only searches I needed to do was when I fucked up my math because I'm shit at math
It's not even explicit when it happens. You'll just find one day that sitting down and coding something becomes a pleasant experience instead of pure suffering. Continually running into small challenges that you can overcome without exerting too much effort. As opposed to when you start where the smallest bugs and errors would take an entire afternoon to overcome. And boy does it feel good when you develop a small game over two weeks and the process is just it slowly building up into something beautiful instead of it being 2 months of you smashing your forehead into your desk repeatedly.
>>16850084
>Designer clothes
>Overpriced hipster frames
>Is attending a concert
The answer is clear. They're all trust fund babies who have all the money and therefore, the time they need to get shit done. While the majority of us here are doing it on the side while dealing with full-time employment/education.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16851300
>>16851096
In CSG only the leaves of the tree are primitives. The operations are the hirearchy. The chart posted is bad since it is misleading. The root node is "NOT" , which is above both the sphere and the cube, and then evaluated left-to-right.
>>16850050
Bought K&R C and looked up OpenGL/Win32 documentation after I understood C. Nothing else is needed…. besides math skills.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
f07447 No.16851315
>>16851300
>Win32 documentation
>he can actually create a windows window in c without copy pasting the 200 lines of code
You have my respect bro.
>>16850050
Most gamedev happens with scripting languages inside an engine that handles all the complicated stuff.
You could use Godot or Love2d
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
bc9773 No.16851349
Anyone seen this before? I ran across a video related to importing its output to Blender. I'm feeling too lazy to model but I guess there's an import add-on for an earlier version of the program, I think guy said 0.98.2 works with it. It has a fairly nice path tracer built if if that wasn't obvious.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16851382
>>16851300
>>16851315
Win32 documentation pisses me off sometimes. It's often times easy to find a variable or function for something but not an example of how to use it. For example, just getting values relating to the primary monitor is easy and self-explanatory. But enumerating and getting info for several monitors is a convoluted several step process. It also doesn't help that their default "lowest supported Windows version" just says Windows 2000, regardless of whether that's true or not. For example, multi-monitor support was added in Windows 98 and most of the multi-monitor functionality still used today works on it just fine.
The dumbest thing I've seen is that Microsoft has deprecated an old function used to get the version of Windows, making it so that you can't recognize whether a computer is running 8.1 or 10 unless you build your application on 8.1 or 10. I saw that 8.1 has a workaround but 10 obfuscates it in several ways.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
f749b6 No.16851388
Well, my sculpting skills are shit. How do I improve? Are there quicker options to create simplistic characters for my 3d game?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851424
Anyone know how to mask a sprite3d in godot? Or just to take a piece off of a sprite or something like that?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fc8bff No.16851439
>>16851388
I've heard that learning to draw (that draw a box website) and studying medical anatomy are good ways to improve 3d modelling by improving spacial and observational awareness.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16851456
>be fed up with shitty gameplay in eroge
>decide to make my own
>the more work goes into design and code the more it feels like I'm wasting effort and should just make it a normal game instead
God fucking dammit.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851459
>>16851456
Honestly for and indie dev theres probably more money to be made in making eroge games than regular games.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
bc9773 No.16851469
>>16851459
Set up a patreon or something and you're likely good to go.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d10a64 No.16851517
YouTube embed. Click thumbnail to play.
>>16850041
at 27 you still have plenty of "neuro-plasticity", most people stop learning new things at 30 only because they don't have the time.
start learning a smaller more interactive language alongside C++. (literally any other language, eg. lua, scheme, smalltalk, python, C).
It is honestly quicker to learn C++ by learning core programming concepts through more educational oriented languages, then going back to C++ when you have some deeper understanding of what it provides you with.
The most important thing to learn as a beginner is abstract data structures.
Learning about lists, trees, stacks, queues, and graphs will turn you from a clueless monkey into someone with intuition and an understanding of abstraction.
to create a linked list in C++, not only do you need to understand the OOP model, you need to understand static typing, template programming and memory management, not to mention all the syntactic sugar C++ has to confuse beginners.
Learning programming through C++ is like trying to study philosophy by first learning Latin or Greek.
The C++ community generally misleads newcomers into cargo-cult mentality.
C++ makes any compromise possible in the favour of "production" rather than the user, which is a significant handicap in learning.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d10a64 No.16851523
>>16851517
and I should warn you, spending enough time on a computer to master C++ might turn you into our friend "April" in the vid I posted.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16851533
>>16851517
>more interactive language than C++ […] e.g. C
Nigger what. Sound advice aside from that.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aeb1f8 No.16851623
>>16851517
legit advise
since actual universities that move 20 years behind technology started teaching C++ in 2nd year of CS instead of first, you can make your own conclusions..
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16851746
>>16851315
You're only writing 200 lines of code because you're following a tutorial. I can do it in 100 lines of code to get OpenGL up, less for software rendering. But still I will copy paste out of my old projects to save time, even though I can do it from memory.
>>16851517
C++ is generally unnecessary to learn and rots the brain… too complicated of a language to fully understand, and too many libraries lets people get away with having gaps in their understanding. Generally locks people into the mindset C++ creates- preventing them from going further. It's like a less restrictive Java or C#, but still a language designed to manage you, if it wasn't too weighed down by its own complexity to enforce this as well as it could.
Depending on the level of patience languages like lua, C, assembly should be used instead.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851902
Do you think this is alright? I'm having a hell of of a time getting hallways to gracefully to their destinations. Getting them to go in an L pattern works fine but getting them to go straight to their destination results in an obnoxious zigzag path that at times glitches at the end points in the wrong direction.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16851913
>>16851902
What do you do to connect them to each other?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851940
>>16851913
A recursive method that "tile by tile" attempts to get closer to its endpoint by checking the angle between its current spot and the end point and picking the best direction. If that direction overlaps with a room or another hallway or goes out of bounds it then goes back and picks another direction and so on.
What you see in those pictures is the same method but the float that it uses to decide its direction is cast to an int, thus the L shape of the hallways. The L shaped hallways all connect fine.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16851960
>>16851940
Have you ever thought about something more expeditive like you take a point in each room and just connect it to the closest one by casting a ray and using DDA? Or maybe this:
https://www.reddit.com/r/roguelikedev/comments/1dopkl/my_procedural_dungeon_generation_algorithm/
https://en.wikipedia.org/wiki/Delaunay_triangulation
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851983
>>16851960
That algorithm looks interesting and I'll keep it in mind when I start to expand my dungeons vertically. But when it comes to that tinykeep game it looks like it barely has hallways to begin with. It seems like that guy crams his dungeons so densely with rooms that his hallways rarely ever even have to turn to get where they're going.
My problem isn't so much finding rooms to connect with, as I already have the closest rooms connecting, as much as it is connecting them in a way that isn't lame. I just want something that results in a Z shape or something.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16851988
>>16851940
>I just want something that results in a Z shape or something.
Then, why not space your rooms a little more and connect them with a random walk or maybe combine your rooms with cellular automata?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16851995
>>16851988
Tell me more about this random walk you speak of.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852003
>>16851995
>get a random number between 1 and 4
>if one go up
>if two go down
>if three go left
>if four go right
All of that between the two points you are trying to connect, you can also generate natural looking caves like this. Pic related for the cave.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852012
>>16852003
This is what I get. The thing is though is that in a 2d roguelike hallways are just walkable tiles while in my game they are legit hallways with walls so a random walk doesn't just make a walkable blob shaped hallway from one room to another, it just makes a crazy hallway that turns in on its self over and over. Which might be useful if I decide not to include a compass in my game and I want too turn players around and get lost I guess.
Takes a decent few seconds more to generate a level now though.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852016
>>16852012
Remove the walls for the hallway then, and also, you could try to make your rooms not so angular. Dungeons often have circular rooms and rooms with "diagonal" angles rather than 90° angles.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852031
>>16852016
The problem then is programmatically figuring out what the outer extents of the hallway blob is and only putting walls on that since I don't want players walking off and falling into the abyss. Also having all of those individual sprites and collision shapes for each tile can actually manage to knock down the fps a bit.
Circular rooms and so on will come later. Eventually I want to have very interesting dungeon generation with rooms and caves of all shapes and overhead hallways that go through rooms and so on, I mean thats half of the reason why I chose to make a first person roguelike in the first place.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852034
>>16852031
>The problem then is programmatically figuring out what the outer extents of the hallway blob is and only putting walls on that
I'm not really familiar with 3D roguelikes but if I was in that situation I'd put the floors first then raise the sides who are adjacent to the void, that might do it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16852046
>>16852031
What if you picked points at random on the room walls that face the other room in the pair, extend hallways cell by cell cardinally toward the other room from both of the rooms, then when they are aligned start extending them cell by cell towards one another? You ought to be able to guarantee Z-shaped halls that way, and the wall problem is simplified because you just don't place walls in the cardinal direction you're going except one time for each hallway when it bends. You could even introduce some noise by skipping a step with one or the other hallway with low probability. Also, for your room blob wall removal problem, if you could detect when two hallway cells' walls would overlap, those are the only walls you'd need to remove. In fact, if you can, you could change the wall drawing function to toggle whether a given cell needs a given wall or not. I have no idea if that would work in your implementation though–ideas are easy to spout off on paper like this when, like me, a person knows nothing about the actual implementation.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852048
>>16852034
>I'm not really familiar with 3D roguelikes
Lol thats fine, there basically isn't any.
>put the floors first then raise the sides who are adjacent to the void
Off the top of my head I would have to have every hallway tile raycast out in each direction to know which sides don't have another hallway tile or have a representation of the hallway in a 2d array and do some checks in there. I wouldn't mind doing something like that but like I said Godot starts to chug when you have every tile be its own individual thing with its own collision shapes and such. For the sake of efficiency whenever there are hallway straightaways I tile the sprite and scale the collision shapes to match the length of it. I do something similar for room walls that have gaps in them by breaking the wall down into smaller rectangles and then assembling them around the gaps in the wall.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852052
>>16852046
Yeah that could work actually. Like you said it would only work for rooms that face each other and don't have anything in between them but I think I'm going to try it anyway.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852061
>>16852048
There's a couple actually, Delver and Eldritch. The first one is cartoony and was inspired by Prelude Of The Chambered by Notch and the second is centered around the Lovecraft stuff.
>I would have to have every hallway tile raycast out in each direction to know which sides don't have another hallway tile or have a representation of the hallway in a 2d array and do some checks in there
Why would you do all of that raycast maths when you can just check in a 3 by 3 area which tile is next to the void and which isn't?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852073
>>16852061
Yeah but they're all action roguelikes or roguelites. I'm going for a true roguelike as much as I can.
> just check in a 3 by 3 area which tile is next to the void and which isn't?
How would I do that? What would I check for exactly?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852091
>>16852073
Well in your array, void tiles are probably set to 0 while the rest might be 1 for a grass tile 2 for a water tile ect… Go tile by tile and for each of them check each side of the tile (left y-1, right y+1, up x+1, down y-1) for a void tile and raise the wall accordingly (the green sides on pic related for example).
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
5cbfc0 No.16852093
AmDev would be a great boon to gaming if it weren't for one thing…there isn't any money in it.
If there is one thing that the mainstream devs are demonstrating it is that too few anons are willing to pay too few dollars to make developing for console or PC worthwhile. Apps are where the money is, and that means small, short, "pay-per-chapter" design. Meaning they are already heading toward amateur developing, in an effort to corner the market by paying individuals to dev games as 1099 independent contractors rather than as actual employees. You pay for your own insurance, get no benefits, and by the time the tax man is through with you, you need 3 of those jobs to make any money…meaning you are working 60 hours a week. But there are enough anons willing to do it thinking that they will make a name for themselves, or just being "hopeful" that it will work out. But they are being played just like everyone else.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16852099
I still want to make a Super Metroid room generator. My problem is that I can easily make a bunch of connected nodes that say "Room B connects to ACDE, Room A connects to BC" etc but I'm not sure how I planarize the node positions onto a 2D plane and come up with realistic room sizes.
This is a general problem, not specific to SM. For example, a room with 3 exits could be one tile in size, or it could be a 6x2 room with a bunch of features and I'm not sure how to design that into a generator. Random ranges and drunk walk dont feel appropriate.
Also the placement of the room in the area itself
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852104
>>16852046
Works good anon! On its own It wouldn't work on even distanced rooms but I accounted for that in the loop.
>>16852091
Oh in an array yeah.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852109
>>16852099
Could you show some video example?
>>16852104
So your problem is fixed?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16852111
>>16852104
The only thing that gives me any real joy any more is seeing people with problems get solutions to them. I'm happy.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852119
>>16852111
>>16852109
Yep, more or less
THE DUNGEON GROWS EVER LARGER
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852121
>>16852119
Good job, what are you going to do next?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
64d6c0 No.16852122
>>16851388
Consider using software that lets you design characters for use in 3d, you're miles away from having passable sculpting skills, and sculpting skills are a start, you need to retopologize, uv unwrap, bake/texture, rig and animate characters and each of these are their own unique discipline.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16852129
Got a lot more building sprites done lately.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852132
>>16852121
I still have a bit of tinkering left to do with old school style dungeons. I need hallways that intersect during generation create proper intersection points. I already have an Idea for how I'm going to do that so it shouldn't take to long. Then adjust my algorithms to deal with wider or taller hallways. Then I go vertical with ramps, multi floor rooms, and obviously multiple floors.
After that comes inventory, combat, spells, monsters, dungeoneering mechanics, and so on. I've been building up ideas for that stuff so I should be ready to go when I get there.
After that probably alternate dungeon generation methods. I want to take the random dungeon generation method out of the AD&D dungeon masters guide and give that a shot. That might be difficult though considering it has diagonal hallways and some nonrectangular rooms and stuff but I have a few ideas on how do deal with that.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
64d6c0 No.16852136
>>16852129
Really looks the part.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852138
>>16852132
Oh actually before the alternate dungeon generation methods I was thinking of having a small town outside of the dungeon with stores and stuff like in Moria or Angband. Ive heard that in Shiren the Wanderer the more you played and died in the dungeon small stories would happen in town and stuff and I kind of like that idea so I might take it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9a42ce No.16852142
>>16852129
It looks really good, what kind of game are you making?
>>16852132
>>16852138
Good luck with your game, I'm sure you'll make it if you keep going hard at it. Start hanging out in some gamedev forums to help you stick to it and maybe get a fanbase.
Just in case you didn't know this existed:
http://www.roguebasin.com/index.php?title=Main_Page
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16852146
>>16852142
Thanks man and yeah I've definitely been going to roguebasin. Thats why I've already planned out how I'm going to deal with a polymorph self spell and polymorph traps.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
adf70a No.16852148
>>16852129
Very nice looking work anon, keep it up.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16852179
>>16852129
Man, that vibe I'm getting makes me want to go play Brigador again.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16852308
>>16852142
>>16852148
>>16852136
Thanks. It's going to be for an RTS using the OpenRA engine. Keep in mind it's in very early development so I'm using a lot of placeholder graphics and audio from Tiberian Sun.
>>16852179
Funny you mention that, I post my work on the Brigador discord server occasionally. The Stellar Jockey devs are pretty good at giving me feedback.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16852535
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ee2ae7 No.16852610
>>16852308
It looks really cool. Only problem is the targetting. It's so small and minuscule you can't tell what you're going to hit and it also makes the whole thing look weak.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16852969
>>16852099
>>16852109
Like I said, I'm not sure how to go from a rooming list (A joins B joins C) into map cells, where rooms are actually placed on a grid and have a certain shape (made out of screens). I have an idea on how to do from step 2 to step 3 (converting a screen/map tile into tile data)
Bonus:
>Rooms typically join horizontally, about 1/10th of doors a traversed vertically
>Rooms have to be at least 1x1
>Rooms can overlap
>Rooms can't have an area greater than 50
>Room width or height cannot be more than 16
>Most rooms are under 12 tiles in size, and are typically 2x3 at most
>"Hubs" (some rooms which connect to 3, 4, 6 or more other rooms) tend to be rather large
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16853066
>>16852969
Are the rooms going to be shaped randomly?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16853075
>>16853066
Yes, that's what I'm trying to figure out. I don't want to just say it's rand(xy) size, nor do a smallest path thing to join them together, because vanilla SM has so oblong rooms once in a while
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16853078
>>16853075
How important is it that you start with a list and build a level from that as opposed to building a random level and making a list out of it? Because honestly doing it the latter way might be quite a bit easier.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16853090
>>16853078
I'd say it's pretty important to generate a room list first. When I have a forest of nodes in the first part, I can attach path-level features to each node such as "AB requires Speed Booster", and then when I actually transform the rooms into tiles, I can take those obstacles into account, plus it helps ensure that the run and items found is valid and makes sense.
But even with a random level approach, I'm not sure of the best way to shape the rooms.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b55499 No.16853099
>>16853090
Metroid has a pretty limited number of room-shape types, you can probably just define those in lists and pick a random one based on number of connections and size.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16853104
>>16853090
Well for building random rooms you could just over lap rectangles of different sizes and and use the combined shape or start with a room that is one screen and then add a screen onto a random side of that room, going until you have hit a maximum room size or whatever.
As for random levels having power up barriers I don't think that would a huge issue. All you need to know is the order that a player should collect power ups. After generating a level, pick a big room to be the start and then grab a handful of the closest rooms to that one. Put some anti-grav boots in one of those rooms and make anti-grav boots necessary to traverse rooms outside of those original few. Then radiate out from that original bunch of rooms to a new set and put a new power up within those ones, mark that the the rooms still left over require that power up and so on. Something like that might work.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16853110
>>16852610
That's just because the targeting is the default ORA airstrike UI graphics, which are at a much, much lower resolution, so they look super small. For the final version I'll just have the notifications be bigger in general. Also more recent versions of ORA allow you to select the direction of the airstrike, so I'll include that.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c5f513 No.16853147
>>16852093
Not wrong.
The other factor that you didn't mention is that as the major companies downsize, the market is going to be full of actual professional developers becoming independent, and that will give amateur developers a shitload of incredibly stiff competition for those already scarce dollars.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c44ef2 No.16853284
Hey everyone.
Hoping to be a yesdev before the end of the year.
Thinking ahead to the upcoming release, considering some different possibilities, let me know what you think.
1. Post your progress here on 8chan because you have an undying love for anon (only to maybe later get driven away as a yesdev because now you're well-known and are easily identified by your game), use itch.io, don't use Paypal to cash out on itch.io since they'll probably cancel your account sooner or later, maybe use riot.im for private communications, and…I don't know, maybe shill on Reddit/Twitter/Youtube/etc. with mirrors for videos on Bitchute (or as a torrent, or something) for when your videos get labeled as "for kids" and/or get banned?
2. Don't post your game here because it's not worth the risk.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16853304
>>16853284
There were successful games made here and their devs surely enough didn't get shot.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
7a8435 No.16853312
>>16853284
Just skip this useless "he he I love imagebeards" phase and go straight to twitter and various google platforms. Imageboards aren't useful for anything productive, and you'll end up moving to mainstream social media anyway if you release a game. You also don't have to shit the thread up with this blackpill cancer about how touching an imageboard will ruin your entire career for life.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
05e906 No.16853484
Fuck me in the ass. How do you guys do it?
I decided to try to make one small game this year, but I can't stop thinking I should just continue practicing. It doesn't look good enough, no matter how much time I take making it. I am going insane.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16853500
>>16853484
I'm on year 7 or 8 with no playable demo.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16853504
>>16853484
Year 4 here, just keep going
Never Give Up
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
05e906 No.16853505
>>16853504
>>16853500
Oh, so that's the struggle? I see…
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
1609f8 No.16853529
>>16853284
see
>>16853304
You can post here and on twatter/faceberg/steam/whaterver. Just don't talk about 8ch outside 8ch and nobody will care.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16853633
Feels good to see progress
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16853871
Unity question. Should I be using transform.translate? I've been directly modifying the transform.position using vector math the entire time just because that's how I was taught and it works.
I tried searching for if I should use one over the other online but all that popped up was Unity's documentation on the two which provides no information on why you'd do it one way over the other.
>>16853484
Managing expectations and scope. While I'm aiming to have a vertical slice complete by the end of the year, I've drastically changed what that looks like to the point where the list of things for that vertical slice is has become a lot smaller than I set out for at the new year.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b55499 No.16853902
>>16853871
If I remember correctly, transform.translate is beneficial since you can do localspace translations, as in telling things to go forward and they'll go in the direction they face.
It's literally a function that checks what kind of translation you're trying to do, then either does exactly what you're doing or does the localspace equivalent. Technically doing it directly should b a tiny bit faster due to overhead, though I'm not sure that's true in practice due to automatic optimisations.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16853940
>>16853902
If has an overload that lets you set what space it's transforming in. Depending on how well the relativity setting works I may use it more due to some ideas I had for ways enemies could move.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
05e906 No.16853991
>>16853871
I know I have to expect what I can do, but that's just not nearly enough.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16854017
https://itch.io/jam/7drl-challenge-2020
If I succeed in making a game in 7 days does that technically make me a yesdev?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16854192
>>16854017
If it's a "full" game that's publicly available, it's yesdeving.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16854233
Can't have a roguelike without stairs. Also rooms can now have gaps in their roofs and floors.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16854583
>>16854233
>first person 3d roguelike
Interesting, I considered 3D (on the gameplay level) but decided against it, so I definitely want to see where this is going. Don't you nodev out on me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16855126
>>16850041
25yo here. if you're trying to learn C++ i recomend learncpp.com . i've been using it and learnt a lot, though it might be a bit overkill for making vidya, at least if you want to work with someone elses engine.
question: does anyone here work with Unreal Engine 4? i've got some noob questions but don't want to look stupid in the forums
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16855224
Ok now we got Barley, Wheat and Turnip, next will be Clovers and the crops for the best rotation will be complete. We will try to make 4 leaf clovers spawn in a clover field randomly, but they will be ultra rare and more of an easter egg.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
03e94c No.16855257
>>16855126
I've made a few small demo type things. Nothing major. So maybe I can help, maybe not. Lay it on me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16855510
I'll ask a retarded question because finding good resources on this is a pain in the ass.
In C++/Winapi, you can't draw to the window at the same time as the window is receiving messages (for example, being moved or resized). As far as I've read, the solution to this is multithreading, putting the window messages in one thread and the drawing in another. Assuming this is right (if there are other ways to do it, I'd love to know), what is a good way to multithread in the main game loop?
As far as I understand, the function specified to the thread only runs upon thread creation but creating the thread repeatedly should be very wasteful on performance, especially with how often I need this function to run. What's a good way to approach this?
I can actually fix my particular issue by putting the draw code in the callbacks for window movement and window resizing but that seems like the stupidest fucking fix I can think of and I'd rather do it "properly" if at all possible.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16855533
>>16855510
You can just have the other thread on standby. Create an event object with CreateEventA on your thread and then signal it using a SetEvent call on WM_ENTERSIZEMOVE. Meanwhile hold the other thread in a blocking WaitForSingleObjectEx. Then execute your game loop in the other thread, checking a nonblocking call to WaitForSingleObjectEx, and call SetEvent again once you get the WM_EXITSIZEMOVE. I haven't done it this way myself but it should work.
Alternatively you can just use SetTimer on WM_ENTERSIZEMOVE to make windows spam you with WM_TIMER messages, which can then be used to execute your main game loop. Just store a pointer to all of the state needed with SetWindowLongPtr/GetWindowLongPtr and call your game loop as a function. This only requires one thread to do.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16855542
>>16853099
>>16853104
Having thought about it a bit more, I'm leaning towards a biased random walk. After N steps, the walk ends, and then I can scale by like, 4 or something, and treat each visited cell as a tile to use.
One advantage of doing this is that if I also create non-uniform boundaries (for example, a room HAS to fit within a certain region) I can blacklist certain tiles from the walk
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16855633
>>16854583
Thanks and how come you didn't go with 3d?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9aa0bb No.16855810
>>16853484
>It doesn't look good enough, no matter how much time I take making it.
graphics or the game in general? unless you're also a good artists it will probably look like crap.
if it's the former figure out what you actually wanna do, worst case treat it as a learning project and do something else in the meantime and come back to it later (or not).
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9aa0bb No.16855815
>>16853529
plus some random unknown indie dev isn't worth to sick the twitter mob on you. it's really only something to worry about if your game gets so big on it's own that they feel the need to cancel you if you're not an ally.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16855816
>>16855533
That second solution is mostly what I had in mind myself.
Now what about getting other window messages while resizing/dragging? Seems like it should be added in a queue but inputs get dropped if they happen while a window gets dragged. I have callback events for keys getting pressed and released and they get dropped, meaning a key that got pressed normally, then released when the window was being dragged would still consider itself pressed, and rechecking the keys after window movement, while possible, is again inefficient.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16855828
>>16855510
>creating a multithreading setup for something that doesn't matter is less stupid than just calling a refresh function when it's needed
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16855870
>>16855816
>Now what about getting other window messages while resizing/dragging?
You might be able to pull this off by creating an invisible window to catch this stuff for you. Another alternative is scanning the keyboard with GetKeyState but this code would be ugly. I just tested this and WM_INPUT is not blocked during WM_ENTERSIZEMOVE. The raw input API could be a solution, but it requires windows XP, so you might have to do some kind of workaround for older machines.
>>16855828
The issue is that it has to be inside of his wndproc callback function. Not very pretty code…
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16855884
>>16855870
Considering I already have a window movement function set, I might just throw GetKeyState in there to rescan the mapped keys after window movement. It's not ideal but better than running GetKeyState constantly. The only time I really need to keep track of ALL keys is during key rebinding which is an obscure enough case and I only need the key being pressed once, not anything more out of that.
Just have to also wipe inputs for any case of the window losing focus too. It always reminds me of playing vidya a decade ago and actually figuring out that you can keep the inputs locked by pressing alt while the key is held. I don't remember what the game even was but I'm pretty sure it was a AAA release. Always found that to be a fascinating oversight.
Last question, super quick one.
I put simple WM_KEYDOWN and WM_KEYUP cases in my windowproc as a test, the only thing they do is cout the key being pressed/released. WM_KEYDOWN starts repeating the inputs after about a second of being held, but if I try to hold two keys at once, it only spits out the repeat of one of the two. I assume this is just a limitation of Windows itself? It does the same thing in any text processor I try as well.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16855898
>>16855884
Yeah this is simply windows's default behavior. I've observed it as well. I would recommend using the raw input API if possible, since it's supposed to take any windows quirks out of the equation, alternatively I suppose it's easy enough to use some kind of global boolean to enforce a rule that a WM_KEYDOWN requires a corresponding WM_KEYUP, otherwise you can discard it.
The alt key locks my window and I never looked into it that deeply. Kind of annoying and I end up forgetting about this constantly.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16855919
>>16855510
>I'll ask a retarded question because finding good resources on this is a pain in the ass.
It sure as hell is. You shouldn't expect proper answers here; seek out documentation to back stuff up. Every forum post I've found is how the user personally perceives it; but with undefined behavior it can work one day and break the other.
As far as I remember, a window (hwnd) and its associated device context (hdc) are considered the same objects. The OpenGL context (hglrc) can draw onto the window associated with the device context it is created with. These are all written for single-threading, so writing to the window with OpenGL whilst querying messages is technically not allowed.
That said, drawing to a frame-buffer (as you might already do as part of deferred rendering) is different. You don't draw to the window, so it's okay. This distinction also makes sense since you can share a single OpenGL context between multiple windows. It means you can render to a frame-buffer, and when it's time to blit to the window, send a message to the main thread to briefly take over the blitting work. AFAIK, this is the way you can multi-thread it without stepping on undefined behavior.
If you look around for examples though; you'll find something different. A lot of projects out there actually query the window whilst drawing to it, but pause the rendering thread when something like a window move or resize occurs. I believe this is technically not allowed, but "just werks" because internally in Windows and graphics drivers you're (probably) not causing any race conditions. I wouldn't be surprised if Windows developers and graphics driver developers make sure this continues to work in the future for the sake of backwards compatibility, but refuse to document it because that's not what you're supposed to do.
Realistically though, the easiest solution is to just single-thread all of your OS stuff so you don't have to deal with this headache. This might seem inefficient, but there is a fair bit of overhead involved in having threads communicate with each-other, blocking and having to wake up. The main reason you might want to move drawing to a different thread is because issuing drawing commands is prohibitively expensive. This is only the case if you draw an absolutely massive amount of objects like modern AAA games do. At that point; you're probably best off using Vulkan; dispatching helper threads to assist in generating draw calls, directed by the main thread.
I myself have decided to not deal with any of this and just use SDL, keeping things simple. I have spent enough time tinkering a broken ass engines and diving into this poorly documented windows API hell.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16855930
>>16855919
Sorry but you're misunderstanding the nature of this question. What you're observing here:
>A lot of projects out there actually query the window whilst drawing to it, but pause the rendering thread when something like a window move or resize occurs…
Is the behavior that >>16855919 is trying to avoid. This isn't a conscious decision but rather a problem in the design of windows- it treats window dragging like a special case and pauses the application thread until dragging is complete. This isn't a race condition of any kind. OpenGL and SwapBuffers work in the callback so it's possible to solve it in a single thread. It becomes more complicated with a multithreaded setup as OpenGL commands can only be submitted on one thread.
>I myself have decided to not deal with any of this and just use SDL, keeping things simple.
This doesn't solve the problem, though. SDL exhibits the same freezing behavior that he's trying to solve. You can find similar issues with every other abstraction layer above winapi.
https://bugzilla.libsdl.org/show_bug.cgi?id=2077
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
6f3bdb No.16855963
>>16852129
Has anybody ever told you how much of a Fallout/Underrail vibe these models have?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16855976
Added conversation camera instead of just staring at the NPC. Makes talking to that guy at the end of the previous demo a bit more engaging.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
716074 No.16855979
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16856045
>>16855633
I generally expected it to be a pain in the ass to work with, but especially dungeon generation worried me because I want to have different dungeon "archetypes". For instance, generating a cave is commonly done with random walks, but 3D random walks have very different behavior compared to 2D walks.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16856092
>>16855257
pic related is the code i'm having trouble with. from what i understand these lines won't be compiled unless i'm running them with the editor. the documentation i'm following states "One thing to note is that the PostEditChangeProperty method is inside an Editor-specific #ifdef." which i interpet as PostEditChangeProperty is in the editor so when i run the code with the editor it will be defined.
but when i try to compile the code i get an error about PostEditChangeProperty not being declared in ABlueprintCPPTutorial. but declaring it like any other function gives me the error "Function definition for 'PostEditChangeProperty' not found". the documentation doesn't say anything about some header file needing to be included. but it does say that PostEditChangeProperty is an #ifdef as mentioned earlier. the problem is that i have no idea how to define it
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
88a907 No.16856110
I found out that if you make a demo and release your game on steam with it, it gives you almost 100k views since there are autists who download and play every demo
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
f1b133 No.16856113
>>16856110
Well yeah. Demos help sales, that's common industry knowledge. Main reason you don't see lots of AAA demos is because
>They already have plenty of marketing and reputation, so people will buy it anyway
>Lots of AAA games play the same these days, so you're not really helping anything by letting people see how the game plays.
If you're just starting out then by all means include a 30 through 1 hr demo of your game.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b0aa99 No.16856258
>>16856092
The function definition inside the class also needs to be conditional to the preprocessor ifdef
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b0aa99 No.16856264
>>16856092
Let me say it again: you probably need to conditionally DECLARE the function inside the class. You do this with a preprocessor directive like you did with that function: ifdef.
I think you don't know how the preprocessor works. It's really simple, look it up
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
6f3bdb No.16856266
>>16856110
A good demo can make your game successful almost singlehandedly, even with no marketing or "influencer" shilling.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16856307
>>16856266
Some games don't even need a demo
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16856314
>>16856264
>>16856258
i'm getting pretty tired so my brain isn't working well and just want this solved before bed. i know the basics of the preprocessor but i'm currently stumped at this. how do i declare the function? everything i've tried has failed. getting this error now
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
962a0c No.16856330
>>16856307
>game
No, that's an art gallery.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16856338
>>16856314
pics are broken, the code is:
#ifdef WITH_EDITOR
void PostEditChangeProperty();
#endif
i get the error: "Function definition for 'PostEditChangeProperty' not found
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b55499 No.16856341
>>16856338
You're trying to use PostEditChangeProperty(FpropertyChangedEvent&), why would you declase PostEditChangeProperty() then?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16856355
>>16856341
probably because i'm retarded. my logic is that PostEditChangeProperty is what compiler-kun is yelling at me about so that's what i need to declare for it to compile
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d902af No.16856362
>>16856355
>>16856341
i finally figured it out. i needed to declare all of PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) rather than just PostEditChangeProperty
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16856484
>>16855533
Trying out the second method worked quite well with one small problem - the window freezes for about a second when grabbed and not moved. If it's moved, it immediately starts animating but if I just hold it without moving, it takes a second. I assume the window just takes a second to realize what's going on and to send the WM_ENTERSIZEMOVE message. Wonder if there's some way to fix that, probably using WM_NCLBUTTONDOWN or something though a quick attempt with that didn't pan out.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16856711
>SwapBuffers syncs itself to monitor refresh rate on modern machine
>not on old machine
>will have to implement some form of custom vsync on my own later
>disable wglSwapIntervalEXT
>expect it to just go real fast like it does on old machine
>get this instead
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a0ea35 No.16856856
>>16856045
>a pain in the ass to work with, but especially dungeon generation
You were right lol. I do plan on caverns and things implemented eventually though.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16856894
>>16856484
I haven't solved this problem either. If you do figure out a way around this sometime, I'd like to know.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16856938
Here's a strange issue I discovered, more a hardware issue on my part than a code issue most likely.
My motherboard supports using onboard graphics alongside a graphics card, meaning I can plug monitors into both. For cable convenience, that's what I have in my setup (had to plug my second monitor into onboard to be able to hook up consoles into my main monitor's second port).
This presents a strange issue where my program, now with disabled Vsync, still Vsyncs itself when it's on the onboard monitor. Other two monitors are fine, and hooking up all three monitors to the graphics card makes them all behave normally. It's either a motherboard issue or an issue with shitty Intel drivers, most likely the latter. I double checked and Vsync is set to "application defined" in the Intel drivers, yet it still syncronises itself, making me wonder what the hell Intel's drivers are looking for that it still thinks my application defines itself as being synced.
I tried this out with Minecraft and a few other games I had on hand and they all seem to behave this way as well.
However, Deus Ex GOTY, which uses Direct3D, doesn't.
While it's all but guaranteed to be a hardware/driver issue and therefore unsolvable, I'd rather give it a go considering how commonplace these drivers are. Question is, are there any other ways to disable Vsync in Opengl/Win32, other than wglSwapIntervalEXT(0)?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16857028
>>16856894
This is quite interesting.
I tried to intercept non-client mouse clicks (via WM_NCLBUTTONDOWN), delaying them until the mouse is actually moved (WM_NCMOUSEMOVE or WM_MOUSEMOVE) which works for a second or two, but then has the same issue. The window takes a second to realize it's grabbed but it does, even if you're not moving it.
It sends the following three messages at the same time as the window freezes: WM_SYSCOMMAND, WM_NCHITTEST and WM_GETTEXT.
The first one is the most interesting as it deals with mouse and window movement quite a bit (the second one deals with mouse positioning as well, giving more credence to this). It uses a wParam to determine what command is requested. The wParam sent is 61458, which corresponds to F012 in hex. If you check this resource, F012 is not one of the available options.
https://docs.microsoft.com/en-us/windows/win32/menurc/wm-syscommand
Now, according to these guys
>Ah, I remember now… $F012 is a "magic nnumber" (not documented) used to drag a window
<So, when you use Perform(WM_SYSCOMMAND,$f012,0); you're actually moving the window. $F012 is MOUSE_MOVE.
>$F012 is SC_MOVE with $0002 OR'ed with it. The 4 low-order bits ($0000-$000F) of WM_SYSCOMMAND are used by the OS internally. In this case, $0002 means the Drag bit is enabled.
https://www.experts-exchange.com/questions/11544059/what-is-f012.html
https://stackoverflow.com/questions/3976610/moving-a-caption-less-window-by-using-a-drag-area
I'm considering writing my own window movement code as that will probably solve this. As currently, I have to DefWindowProc WM_SYSCOMMAND, as if I don't do that, Window movement is impossible. Shouldn't be too hard as far as I'm concerned.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16857066
>>16857028
I tried catching WM_NCHITTEST but it didn't solve the issue. WM_SYSCOMMAND with 0xf012 has the same issue.
>I'm considering writing my own window movement code
I'm aware of one person who solved this issue in the same way. He managed to rip out pretty much all of the default windows behavior in his windows, but he had to reimplement a lot of it to make it work. In the end his window was just one big client area and he had to do the platform work needed to give it controls and everything. But that was the point…
So, maybe that's all there is too it, and we have to take the plunge. I suppose that works, I may go down that path at some point. Right now i've just accepted the current limitations of my method, because i'm more interesting in developing my engine code.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16857089
>>16857066
It's actually not that complex. Just intercept WM_SYSCOMMAND and if wParam is 0xf012 (61458) tell the engine that the window is being moved and don't let it do anything else. Otherwise, just refer it back to DefWindowProc.
Then, if the mouse is moved, move the window accordingly. I just get the mouse position from WM_SYSCOMMAND, get a new one when the mouse is moved, compare the two and move the window, then overwrite the old mouse coordinates.
Lastly, if the mouse is released, just let the engine know that the window isn't moving anymore.
My game doesn't allow resizing of the client by just stretching it (you'll do that via a settings menu), I assume that would require a bit more work but this was pretty simple. With this, I don't even need to spam the engine with WM_TIMERs as it never freezes either way.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16857094
>>16857089
Should note really quick, if you move your mouse too fast, the mouse escapes the client and movement gets glitchy. To fix this, you have to SetCapture(hwnd) in the WM_SYSCOMMAND callback and ReleaseCapture() in the WM_LBUTTONUP one.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16857118
>>16857089
>>16857094
YES! Finally the mystery has been solved. Who knew it was this easy to implement? I would have done this ages ago if I didn't think there was some kind of catch-22 preventing me from pulling it off. Now I can delete all of the dumb code I wrote to make it draw inside of WM_TIMER.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9af86d No.16857357
Fucking around with map generation and analysis. Pic related is a biased random walk that never undoes its previous move. It would be much nicer to generate the map from some sort of abstract description (like a room graph) because the AI and item locations could use it, but I like muh caves and teaching your computer to describe an arbitrary map is surprisingly fun. Having a method that works in the general case might come in handy later as well, for instance if the player bombs a new hallway into the map.
The xray-like section measures the wideness of a tile, defined to be the length of the shortest line through the center. Calculating this takes a while, unfortunately. Finally, rooms are connection areas of wide space. These are shown as the colorful blobs.
I'm still not sure how to deal with singletons of solid space. They produce tons of false positives for walls if left alone. Right now I calculate the wideness once pretending that they are non-solid, and then once more ignoring only those which turned into reasonably wide tiles in the first step. This deals with sparse singletons in big rooms, but it has the annoying consequence you can see in the blue room: The northern section should probably be considered its own room, but it's mostly separated by singletons, so it's treated as part of the giant hall.
Until I get an idea how to fix that I'll work on turning this thing into a graph, which probably requires some smoothing and expansion of the rooms. You can't see it on this map, but sometimes there are three rooms A-B-C in a line with a path A->C that grazes B. This would be interpreted as if these three form a loop even though A->C pretty much requires you to go to B first.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9716b8 No.16857483
>>16856330
and I am not so sure about the "art" part
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
360f17 No.16858522
>Yandev on suicide watch
>Hotwheels on suicide watch
>Corona-chan ruining AAA industry marketing
Is 2020 the year of the gamedev?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b55499 No.16858560
>>16858522
>yandev on suicide watch
He's still earning more than minimum wage for doing fuckall, anon.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
360f17 No.16858580
>>16858560
He's making 2 dollars more than a burger flipper in Commiefornia and at the rate he is going he will be making $10 an hour in 3 months.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16858998
>>16858522
I would be happy with that amount
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
57d693 No.16859013
>>16858580
>>16858522
>>16858560
his total earning are probably somewhere near 100k. But knowing him he's retarded and probably spent it all on shit he doesn't even need.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9bde72 No.16859033
>>16858580
I checked recently and he makes $2,7k of free money since he doesn't put any effort.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16859282
This is our planned temperature graph for the seasons in the game, do you guys think it is too extreme?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16859298
>>16859282
Not trying to be unhelpful or rude, but knowing nothing about how the temperature interacts with anything in the game, I'd have to say that you'll need to decide that yourself. I don't really see how someone could give useful feedback otherwise. You'll certainly want how the game plays to influence the temperature curve and not the other way around, unless you're trying to simulate conditions in some actual climate.
I want to say "no it doesn't look too extreme" because I imagine you're going to have temperature effects for very hot and cold weather and want those to actually be in the game, but at the same time I don't see how one person saying that helps you very much, and it's certain you're going to have to balance in detail later on.
Are you concerned about lore reasons for having 95 degree heat in summer and slightly frosty conditions in winter? Browse wikipedia for a similar climate (looks like this "humid subtropical" climate region is close) and check the nearby geography against your game's area. There's a lot of real-world data out there that can help inform a decision like that.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16859312
>>16859282
looks fine to me
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16859361
>>16859298
>>16859312
it just feels strange to me because temperature doesn't variate that much where i live (specially because we live by the sea, so it is more stable)
Temperature will influence the crops instead of the seasons doing so directly
In most games
Season -> Crops
In our game
Season -> Temperature -> Crops
Some crops will be viable both in spring and fall due to this, as long as the temperature match you can raise the crop, no need to wait until the calendar says 1st Spring to start raising spring crops, the death of crops from being out of season will also be gradual instead of everything drying up when the 28th ends
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16859390
>>16855898
>The alt key locks my window and I never looked into it that deeply. Kind of annoying and I end up forgetting about this constantly.
That's not that hard to fix in particular, just intercept the ALT (VK_MENU) click. In most applications, they bring up the contextual menu so that's what I made it do. I also replaced the regular contextual menu by intercepting non-client right clicks in a particular way and the VK_APPS key. However, the contextual menu still freezes the window and I haven't been able to address that aside for WM_TIMER spam. Seems like none of the messages that are returned do much of anything when intercepted.
>>16859282
Any temperature can be written off as just "that's what it's like in the region".
Where I live, Summer and Winter are 10 degrees cooler and fall is 5 degrees cooler than your graph. From what I know from a friend of mine, the US west coast would be pretty close to your graph, maybe a few degrees cooler in the summer and five degrees warmer in the winter. So aside from the extremes being more extreme in your graph, it's pretty close to the West Coast. Might be even closer to the east coast from my limited knowledge of their weather patterns. Just consider what region yours is closest to in terms of the real world.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9f7d17 No.16859533
>>16859361
and if you make different regions having each their own temperature modifier, you could make it more dynamic, although it might be very confusing for the player if it's not properly explained or if it's hard to visualize
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16859557
>>16859533
yeah, soil features and temperature will vary, this graph i posted is the default for the city area
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16859565
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16859582
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a0ea35 No.16859632
>>16859282
Are you going to include snow in your game?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16859689
>>16859632
yep, but during the peak of winter only, mostly 7 or so days of it, most of winter will have tillable soil
we want to make the city lakes freeze too during the peak.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16859974
>>16859565
and I thought this year was warm. Mean in Janurary may be -4 and -15 is completely normal but in 1925 we had 16 degrees C. GLOBAL WARMING IS TOTALLY REAL GUYSE
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
cdd65c No.16860051
>everything I learnt about OOP is biting my ass in C++
>overloaded functions somehow fucking me over because the compiler is really confused, couldn't figure out same number of arguments but wildy different data types (might be similar size?) if it had to deal with a reference
>was it a move or copy operation? don't even want move operations half the time, forget if copy operations in general are bad for performance, not sure the true reasoning behind it other than muh write and muh cache, not entirely sure if i use = for pointers if it's always a move or a copy
I'm starting to think objects are a mistake.
>>16859282
>what is humidity, wind, cloud forecast
i want a bit more autism in my weather
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
824496 No.16860070
>>16859282
I'd say it depends on the setting. If you think that's extreme, where I live, there can be as much as a 90 degree (Fahrenheit) difference between the hottest summer day and coldest winter night. I assume your game isn't taking place in a desert though, but it's not like we don't have farms out here despite the climate either.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16860127
>>16860051
Objects themselves are fine, but the way they are commonly done (especially in C++) is idiotic.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
75c489 No.16860156
>>16860051
using = for pointers should be fine, since all you're doing is copying a reference to your data, not the data itself. It should be very performant - you just gotta make sure you don't end up with memory leaks with your pointer use.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
730afc No.16860167
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16860171
>>16860051
That is the default temperature for each season, weather will increase/decrease the temperatures further
If there is one thing that our game won't lack is autism
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
facd56 No.16860488
I've decided I'm going to use my dungeon generation code as a base to make a 7 day roguelike. https://itch.io/jam/7drl-challenge-2020 Not sure if I'll be able to finish it in time but whatever. So since I have nothing to work with for monsters I'm going to one monster that will be the Minotaur. The Minotaur will hunt the player through the halls of the dungeon while the player tries to gather up as much loot as possible before dying. There will be just one decent sized floor with a few connected basements. If I can't get the Minotaur's navigation code working properly in time the backup plan is spectres and ghosts and stuff that can go through walls.
Do you think it would be more appropriate that the player have to get all of the loot and then leave the dungeon as opposed to just getting all of the loot to win?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16860500
>>16860488
Roguelikes usually have different tiers of wins. Getting out with 100% loot could, in your game, be a complete victory, whereas getting out with less would be less of a win. It'd introduce a resource management aspect by having the player decide when is the time to cut and run. Getting that balanced right in seven days, though, could require a lot more experience with design than I'm guessing most amateurs have, so it's probably better to aim for just getting 100% and getting out. Just actually getting all the loot and that's all feels a little simplistic, but should be fine if you're okay with players making decisions like "it's fine to dash right at the minotaur trying to scoop the last treasure before he beats me to death."
Having said that, with just one monster I feel like it'd be a good idea to get that one monster's behavior as threatening and intelligent as you can. It sounds like the game's pitch is basically You versus the Minotaur, and having that one adversary be worthy and intimidating will be what makes your roguelike stand out.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
facd56 No.16860514
>>16860500
Yeah I'm thinking of having the Minotaur smash down walls between rooms and bring down roofs on top of your head and such while on the other hand the player can spike doors to keep them shut or drop ball bearings and such to get away. Also I'm thinking of having loot have different values so its up to the player if they want to collect all the lose change in a room while the Minotaur gets closer rather than leave it and look for better stuff.
Getting all of the loot will obviously mean you win but I'm kind of leaning towards players just trying to get a high score. Don't know yet.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16860519
>>16860514
Without a lot of really careful design and testing, you're more likely to have a playable game if you leave it open-ended and go for high scoring, I think.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16860594
>Redo some framework stuff I made
>Find out there's some incredible logic errors
Now I'm having a retard moment and can't remember how to rotate the rows efficiently. Like if I wanted to shift the rows by +/-2, for example
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
2c9e50 No.16860643
>>16860488
>The Minotaur will hunt the player through the halls of the dungeon while the player tries to gather up as much loot as possible before dying.
Try to rip off Mr X or the nemesis from Resident Evil but make your minotaur smarter.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
facd56 No.16860691
>>16860643
Never played. What do they do?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
2c9e50 No.16860700
YouTube embed. Click thumbnail to play.
>>16860643
Big guys, who chase you around the level. If they hear a sound they come to you and try to kill you and you have to hide from them.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c0ebfa No.16860782
>>16860700
>big guys
>Mr. X
<mod where Aniki is the Chief of the Raccoon Gym Department, and he finds out the rookie hasn't paid his dues
I really hope this is a mod
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16861033
>>16860594
You only ever need at most one temporary variable to rotate fields in place, but in this particular case your rotation is an exchange, so you can abuse the fact that A = A ⊕ B ⊕ B, B = B ⊕ A ⊕ A. If X, Y have the values A, B respectively, then:
X := X ⊕ Y (now X = A ⊕ B)
Y := X ⊕ Y (now Y = A ⊕ B ⊕ B = A)
X := X ⊕ Y (now X = A ⊕ B ⊕ A = B)
will exchange the two. This can also easily be done in parallel for rows.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a5b6ea No.16861062
>>16861033
What I did before was have it swap with (y * i) mod n, so that each row is guaranteed to be visted and swapped. But then I saw that if the Y shift is a factor of the height (eg 2 and 4 on this case) then special cases come up
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16861103
>>16861062
This happens not just for factors but for all shifts with GCD(shift, height) > 1. Four is just small enough for these two concepts to be the same here.
I think you can still salvage this algorithm if you correctly account for the fact that when GCD(shift, height) > 1, you have multiple disjoint rotations instead of one big rotation through all rows. Whether this is still efficient in the end is something I can't say without writing/seeing the algo myself, though. If you only want it for 4 rows, you're probably better off with a special case anyway.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d8917f No.16861129
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16861247
>>16861103
Actually yes it can be saved, and it's not hard. The explanation can be simplified a lot with some basic group theory, but I don't know your experience so I kept it as elementary as possible.
Let s be your shift, n the number of rows, and d = GCD(s,n). Pick some row index i to start in and step through the row indices modulo n in steps of s, until you reach your starting index i again. This happens after at most n steps because i ≡ i + sn mod n. If you needed t steps, there are exactly t different indices in your cycle.
By construction t is the smallest number such that i ≡ i + st mod n; subtracting i gives the equivalent condition st ≡ 0 modulo n, which doesn't depend on your choice of i, so we see that all such cycles have the same size t.
Because you can step forwards and backwards, two cycles of row indices are equal as soon as they share a single index, and an index j is in the cycle starting at i if and only if j ≡ i + ks mod n for some k, or in other words if and only if j - i = ks + ln for some k and l. By Bézout's lemma, such k and l exist if and only if j - i is a multiple of GCD(s,n) = d, so the cycles starting at 0, 1, …, d-1 are distinct.
Summarizing, there are GCD(s,n) = d distinct cycles with starting points 0, 1, …, d-1. So the easy option is to calculate GCD(s,n) and do the necessary swapping. Another option is to abuse the following two things:
- t, the number of indices in a cycle, is also the number of swaps in a cycle plus one.
- The n indices split into d cycles of size t, so n = dt.
This yields the following code which doesn't even calculate GCD(s,n):
rotate(rows,shift) {
const n := length(rows);
var start, done, current, next;
start := 0;
done := 0;
while (done < n) {
current := start;
next := (current + shift) % n;
while (next ≠ start) {
swap(rows[current], rows[next]);
done := done + 1;
current := next;
next := (current + shift) % n;
}
done := done + 1;
start := start + 1;
}
}
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
facd56 No.16861252
I think I got navigation working. I know its lame that the Minotaur has to go to the beacon in the center of the room before going to a door but ideally the player would never see that since the Minotaur will go after the player as soon as he sees you.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
83efcb No.16861601
Here we go folks, the bare minimum for a roguelike game.
https://mega.nz/#!9rQVDKha!H8SUE5Ct5HBKqEDTlWtzZWClRMNoorpyVVusCqM0A3M
If anyone wants to give some feedback that would be great. I still have until March 7th at 6pm to polish it and add more features. Oh also don't press the space bar, that just loads a testing scene.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a5b6ea No.16861627
>>16861247
It can be used with any dimensions so a general approach that isnt a brute force is helpful. I think that having multiple cycles was throwing me off.
This whole thing is to take linear array data, and interpret and manipulate it as rectangles of data (eg efficient tile storage in an array, but manipulate it intuitively as a map chunk)
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16861632
>>16861601
>bare minimum
>37.5 MB
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
83efcb No.16861646
>>16861632
Godot is weird. It exports the entire engine along with the game. The editor its self even runs in engine.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16861721
>>16861646
>The editor itself even runs in engine
That seems like a helluva gateway to modding games.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16861730
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16861743
>>16861730
And this is why we refuse to use voice acting
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
14c3d8 No.16861746
I just made my first Doom map.
It's an empty house with working doors for all rooms and cupboards.
It's the stupidest thing ever and I feel so proud.
Not sure if mapping counts as AGDG but I'd like to make a Doom WAD by the end of it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
83efcb No.16861766
>>16861746
agdg is for modding as well as deving.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
095bd2 No.16861918
>>16861730
calling this music shit is a major understatement, how do you think this will attract any backers?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a4a716 No.16861943
>>16861730
For a second i got excited, but then i saw the pause.
Also the actual models of the girls need to be cuter. They seemed very bland.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
26cffd No.16861970
>>16861730
Game looks fun, but that music was at best a questionable choice…
Wish them all the best though.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e40b9d No.16861978
>>16861730
>that music
btw, what was the name of the anime tank game that was shilled here
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
83efcb No.16862133
If someone could find me a good heavy footstep sound effect I would be very grateful.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16862357
>>16861978
shimapanzer. I think it never got anywhere. definitely more shit than UW
>>16861918
I hope the gameplay speaks for itself
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
2d3904 No.16862399
What's stopping you from making a game?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16862402
>>16861730
According to some german "dota but" player, the kickstarter trailer is 95% of the success of the kickstarter, os they should've spent at least 2 weeks on that. If they did, well…
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
338912 No.16862425
>>16850084
Bitch I work 55 hours a week. I don't live on daddies or mommies cash. Until them or you.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16862459
https://itch.io/jam/nanoreno-2020
Anyone else going to grind on a VN this month?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16862462
>>16850084
They go outside and make hipster friends who help them. Seriously. Bite the bullet and go to some hipster fucking shit like your local IDGA or Women who Code chapter or some repulsive shit like that. You will become a better dev for it if you can get in on some sort of group project or if it gives you a lead on a game jam.
Another possibility is they are genuinely motivated by their stupid ideas where you are not. Its one thing to try to pick up every nuance of code or blender or whatever and its another thing to just download an engine to sit down and just make something, even if it is shit. Your inner desire to not half-ass things is probably preventing you from even doing anything. Throw that aside and spend hours and hours on a shitpost in game form. You know you will enjoy it.
If you don't even know where to start, godot has great tutorials in its documentation, unity has billions of tutorials. Game maker as well. Also, RenPy if you want to do a visual novel which is arguably easier than making a website, but using the extensions people have made is a great way to learn python.
Basically: JUST DO SOMETHING
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
52b351 No.16862482
Quick feedback question. What UI options do you prefer in a Zack McCracken style adventure games.
- simple: look, use, talk
- complex : look, pull, push, open, close, lift etc.
I like the simple approach, as the complex one just has me trying out all options. Anyone has a different opinion?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
88a907 No.16862527
I ended up remaking my game, for a demo, from scratch and I was able to recreate 1/5 of the game in 2-3 hours.
The main game took me 2-3 months to create.
I'm I just getting better at game making or am I just shit
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
000000 No.16862555
>>16862527
You skip most of the involved learning and design effort when remaking something, so it's bound to be a lot faster. Just don't fall into the trap where you infinitely restart from scratch before your first release.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16862561
>>16862399
Finals. But I'm not going home for spring break to avoid Corona chan. So, I'll be with my desktop and able to make up for it with 18 days of development.
>>16862555
Trips of truth. Don't get stuck in revision hell. Just because you CAN remake a game from scratch faster and better than the first time every few months, doesn't mean you should. Because remaking the same 5% of your game 3 times over is still only 5% of your game being done.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16863163
>>16861247
I did manage to finish this, but for some reason I kept being retarded and couldn't figure out the Y shifting. The fastest code would be using Array.Copy() to move things around. Ideally, I would also use a single buffer whose length is equal to the bounding width, and intelligently combine XY shifting. Instead, I split them into two separate operations, and the Y copies the entire data into the buffer first, then just writes it to the appropriate spot. Feels dirty, but it works as a naive implementation
https://pastebin.com/raw/ZrJv4QwH
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
82329a No.16863335
>>16862482
> as the complex one just has me trying out all options. Anyone has a different opinion?
how many objects do you have that would need different interactions instead of simply click -> "use" and do whatever makes sense? and if it's worth to keep the interface more cluttered for it?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16863464
>>16862482
Like the other anon said, it's entirely up to what you think you can do with it. If you think you can work in some puzzles where the difference between open and close and lift is relevant, then do it. In fact, if you do add the extra verbs, you'd better make sure they get used cleverly, but not so cleverly that you create terrible puzzles. Like, if you have one door that you have to LIFT instead of OPEN, unless it's because all other doors are powered and this one is depowered, or something, that's not a good puzzle. But maybe a door that you have to OPEN and then LIFT could be a decent one. You could also go a hybrid route, if your engine allows it. Like, have different classes of items give a list of verbs that could work with those items–like every door has both an OPEN and a LIFT option in a little radial menu when you click on it. That saves you from having to write a SMELL and a KICK response for every door in the world, but at the same time it allows for a little more interactivity than just one unified USE verb. Really, unless the nostalgia for many-verb interfaces is extremely important to your players, then it's entirely up to how much work you want to do and what sort of interactivity you think you can take advantage of.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
42d236 No.16864975
>>16850560
Been working and looking for another job so not much progress.
Rebuild is complete, fixed some issues I didn't think were issues. Camera uses quaternions/slerp now, I'm going to pound out a level tonight.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16865007
>>16864975
That second image is giving me Xenogears flashbacks with that round, jaggy-bordered 2D sprite wandering around on a big square.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
42d236 No.16865030
>>16865007
My game is based on Xenogears but with stealth and targeting like Fallout 1.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e84e3c No.16865054
DO NOT CODE W C++
CODE WITH C
DONOT USE NEW ENGINES (UNITY, GAMEMAKER, UNREAL, GODOT, CRYENGINE, AMAZON ,RPG MAKER, LIBGDX, URHO)
CODE YOUR OWN ENGINE RETARDS
OR USE A PRE 2010 ENGINE
FUCKING PAY ATTENTION OPEN YOUR EYES YOU CRIPPLES
NOBODY BUYS GAMES FROM STEAM ANYMORE EVERYTHING IS RECYCLED . NOBODY LIKES THE PS4 OR XBOX ONE . STAY AHEAD OF THE GAME
THE JAPS AND BRITISH MADE BETTER VIDEO GAMES IN THE 2000'S -
DONT FOLLOW THE CROWD
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
250fea No.16865071
>>16865054
FUCK YOU I WON'T DO WHAT YOU TELL ME
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
2f781a No.16865103
>>16865054
>NOBODY BUYS GAMES FROM STEAM ANYMORE
Someone tell Valve that so they start making games again instead of just sitting on their massive money pile all day.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
110cc5 No.16865145
>>16865054
>YOU MUST REINVENT THE WHEEL BECAUSE REASONS
Autism reasons.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
33c951 No.16865152
>>16865071
MOTHER FUCKEEEEEEEEEEEEER
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16865157
>>16865054
>DO NOT CODE W C++
>CODE WITH C
Why? I totally understand not using an engine as those can really limit you, but why bother going with the less-feature-packed language? So you could waste time reimplementing the features on your own?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b75abd No.16865161
>>16865157
Just do it all in Python bro. No need to reinvent the wheel.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
87510a No.16865165
>>16865161
Python's indentation makes it unusable for me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b75abd No.16865173
>>16865157
>>16865165
Seriously though the only reason to engine-fag is either autism or you absolutely need to most bleeding edge performance possible. If it's the former (all cases here) people can do whatever the fuck they want. If it's the later then most C++ is like Java in that most features are so generalized they will hurt your performance more than help. This can be seen by the fact AAA devs pushing console hardware avoid most C++ features. Here is that guy from Insomniac who now works at Unity straight up said the only reason they're not using C99 is because devs aren't familiar with it. The Ubisoft devs said the same.
I'm not really interested in getting into an argument over this. It's been in every single fucking thread for the last 4 years. I'm just stating my piece and I'm also more interested in what devs who have doing this since the 90s have to say than no-devs online.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
cdd65c No.16865183
>>16865054
i will make my own bare bones engine, but i will use c++20 instead of c because of MODULES and muh strings and i might bolt on guile for scripting because i believe that a scripting language that has minimal syntax is the most ideal.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fa7ca6 No.16865193
>>16865145
Memes aside "reinventing the wheel" implies that there is something as perfect as a wheel, but Unity and friends couldn't be further from perfect. The expression also implies there's nothing more specialized to invent, just because truck wheels exist doesn't mean you shouldn't invent a new wheel when you want to make a bicycle.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16865198
>>16865054
Use a existing engine if you want to make a game.
Coding an engine is only useful as an intellectual pursuit and something that should be done for the sake of coding an engine. The same nips you are talking about are using Unreal and Unity now because it is smarter.
Code in whatever language you want. C has strengths as does C++. Godot and gdscript is pretty comfy.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16865211
>>16865198
Creating an engine to make a game.
Writing an image editor to draw a meme.
Writing a DAW to write a song.
All of these are basically the same thing. There is nothing inherently wrong with writing an engine to make a game. It is just completely unnecessary and if your goal is just to make a game it is a complete waste of time and effort.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fa7ca6 No.16865218
>>16865173
>the only reason
There's a lot of other reasons to enginedev. You have more control over each part of the system and it might be easier to do changes to things because you understand it thoroughly. You get a lot more programming/dev experience (and the experience of learning and finding solutions itself) if you build the whole engine instead of just doing high level unity stuff. You won't be bound to a third party in case they cuck out or the engine goes to shit or becomes paid-only or adds spyware into your games or something. You won't be limited by the platforms that the engine supports. Your game size will be significantly smaller no matter what kind of game you make. The performance is very likely to be better all around even if you're not an optimization freak, just because the engine is tailored to the job it's meant to do instead of being this generalized do-it-all abomination that was bent to do it. If in a distant future you want to do something that a premade engine gets in the way of, you're already equipped to do it. If you find that developing tools or other programs is more interesting or profitable or just helpful for gamedev, you already have basically all the skills to do that since your engine is just another form of it.
Acting like doing it is a waste of time sounds like butthurt that some people can do something harder and "ideologically" better than you can. You should ask yourself what you want to do. If you just want to shit out games easily or want HD™ Realistic graphics and don't care about anything else, then there's little reason to enginedev. Enginedev is more for investing in your broader long term skills as a programmer and your ability to do high quality software, but isn't practical if you're a brainlet or don't have some extra years to spend before you can start making games.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
472f8d No.16865239
>>16865198
Keyreal is working on his third game made using his own engine, with most people here knowing his second one (Speebot). Part of the reason he can finish games as fast as he does is the experience from knowing how to mke an engine, plus the fact that his engine works the way he wants it to.
Difference between Keyreal and for instance Sigmadev is that one finished their engine to make games, and the other works on his engine to make the perfect engine for what he wants, which is targeting nearly every PC from the 90s until now.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b75abd No.16865242
>>16865218
>You have more control over each part of the system and it might be easier to do changes to things because you understand it thoroughly.
In theory, but in practice you can usually work around it. For example, I didn't think stealth was possible in the Source engine due to how the lighting worked until I saw Dark Messiah do it.
> You get a lot more programming/dev experience (and the experience of learning and finding solutions itself) if you build the whole engine instead of just doing high level unity stuff.
This kinda falls under autism for me. It's really debatable how much of that experience is meaningful. You can get problem solving experience multiple ways.
> You won't be bound to a third party in case they cuck out or the engine goes to shit or becomes paid-only or adds spyware into your games or something.
> You won't be limited by the platforms that the engine supports.
There's tons of open source engines.
>The performance is very likely to be better all around even if you're not an optimization freak, just because the engine is tailored to the job it's meant to do instead of being this generalized do-it-all abomination that was bent to do it.
True but I don't really see a lot of people here doing shit that is such a performance hog it requires it's own engine. Unless you want to make a game that runs on absolute bare minimum hardware which falls under autism for me
> If in a distant future you want to do something that a premade engine gets in the way of, you're already equipped to do it.
You can do it with an open sourced engine to, but like I said you can do a LOT with engines if you're clever enough. Not really sure if there's any game today that warrants it's own engine aside from MMOs. A lot of old games are being ported to unity.
>If you find that developing tools or other programs is more interesting or profitable or just helpful for gamedev, you already have basically all the skills to do that since your engine is just another form of it.
Breaking into that field is not easy. Recruiters don't give a shit about projects they only care about real work experience and if you're doing it solo you have to make the connections.
>Acting like doing it is a waste of time sounds like butthurt that some people can do something harder and "ideologically" better than you can. You should ask yourself what you want to do. If you just want to shit out games easily or want HD™ Realistic graphics and don't care about anything else, then there's little reason to enginedev. Enginedev is more for investing in your broader long term skills as a programmer and your ability to do high quality software, but isn't practical if you're a brainlet or don't have some extra years to spend before you can start making games.
FYI I'm an engine-fag porting my engine from C++ to C.
>>16865239
I have no idea how that dude does it. I know he works a software job, but most ones I've seen are so soul crushing I never have the energy to do anything afterwards. I don't even play games that much lately.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
09603f No.16865274
>>16865218
>You won't be bound to a third party in case they cuck out or the engine goes to shit or becomes paid-only or adds spyware into your games or something.
pretty much irrelevant, especially for engines that are used on a corporate level. the minute they force changes retroactively, even if it just license, is the minute they lose all their user base. no company is retarded enough trying to fuck with customer's production line, so at worst it's upcoming releases, which means you can switch after the game is released or your project's done.
like most shit in the end it depends on the scope of what you wanna do and what you need for that.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16865370
>>16865239
Did he use OpenGL or did he design his own renderer? Did he program his own libraries? Did he write his own compiler? What about the language he used? Did he design his own to efficiently describe the game he wants to make? What about an OS? Did he create the perfect OS on which his game can be ran on? Honestly though, he can't start making a game before he fully understands how to create a computer from only logic gates, and even then he should have a firm grasp of how to physically distribute transistors to create his own computer architecture. And even then you should fully understand the process of making a silicon chip, because what good is a chip if you don't know what is in it?
Knowledge of lower level systems is going to help you as a programmer but for most just downloading an engine and getting started on simply creating assets and writing systems is a great starting point for anyone who just wants to make a game.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
075528 No.16865502
>>16864975
Had this idea for a while of low poly geometry like Unreal, decided to try out a couple of triangles to make the corner of this floor. Doesn't seem like much but since it worked, I'll be sure to make larger map geometry out of small pieces. Godot seems to have an issue where if a mesh is half out of the view frustum, the mesh becomes unlit. Definitely not for all meshes, like rocks, box planters, and doors.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
075528 No.16865605
>>16865502
I want to go for something like the Half-Life 2 DM puzzle server map hubs for a new test map.
I need more textures.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
0915cd No.16865801
fuck me, anyone ever done pathfinding on a grid? different movement costs, so using dijkstra. but the grid itself is changing too and I can't wrap my head around how to do dynamically calculate the graph when the grid gets bigger.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
cdd65c No.16865809
>>16865801
a* pathfinding, I think it's slower than dijkstra but provides a good short path https://en.wikipedia.org/wiki/A*_search_algorithm
boundry box if possible
multithreading
if you're moving multiple things in real time, it gets exponentially harder.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
2aba46 No.16866251
>>16865605
Sense of scale is off but at least I have a decent map now. Godot's 3D lighting is really bad but I'll do what I can. This is intended to be a hub map for my demo, now that it is built I can take chunks of it out to build other maps faster. I also need to make a new test map, apparently I have some issues that I thought were fixed.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
dbfffd No.16866341
We released a new demo today. Try it out, fags.
https://shodanon.itch.io/peripetaia
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16866368
>me to me going back seeing the code in a project I dropped 6 months ago
The feels of being a nodev engine fag.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b0aa99 No.16866374
>>16852308
>those explosions
>that tree falling over
>that TS vibe
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b03088 No.16866397
I added a new thing in the wiki for enginedev:
http://8agdg.wikidot.com/programming#toc6
Feel free to add your hot opinions about why it's good or bad.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16866438
>>16866397
Only two points are necessary to be honest
>Is it impossible to make your game in an existing engine?
>Do you want to learn how to make an engine more than you want to make a game?
If yes to either, make an engine. If no, use an existing one.
>well I prefer language xyz and no engine with that language exists
Fuck off nigger.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
78189f No.16866452
>>16861746
Nice, some screenshot would be good to see.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16866465
>>16866438
Honestly, this.
Feeling like you *have to* build the engine is an outdated mentality. Existing engines give you so many tools to do cool shit quickly, and frees up time to work on assets and systems.
Engine dev is in a weird spot, where I would recommend anyone who wants to be a better game programmer attempt to do it, but I would urge anyone who just wants to get into indie game development for the first time to stay as far away from it as is humanly possible and just focus on making shit using an existing engine, as there is already a shit ton to learn from game design, to writing systems, to 3D modeling, to audio production, to UI development. Starting with the bare bones basics is almost insanity unless you are more interested in computer science than you are gamedev.
Also, Godot is built to be customizable enough to use your special snowflake image with your stupid special snowflake language if you really want to figure that shit out.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3fde36 No.16866482
>>16866452
WIP, I'm still getting the hang of it. Gonna add some slopes and stuff to the outside area, and properly texture things so it looks more like a residential house.
Also going to make a 3D sector to the roof for a proper sloped rooftop. And I've got to improve the outside area (beyond the fence) just for set dressing so it feels less sterile.
And a Pinky on the toilet.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16866492
>>16865054
>Using languages
>Not making the entire thing in Binary
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
30323e No.16866558
>>16865054
Use what works, draw off of references if it helps and if it doesn't work or requires ten years of work to make feasible stop and do the easy option.
If you code, learn better formats. If you do 3D models or animation, use blender and don't shell out for an expensive animation software, it also does 2D animation now. Blender isn't hard to use, that's a meme likely perpetuated by software companies to get you to buy their shit.
Avoid excessive bloom and learn to optimize your shit.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
78189f No.16866671
>>16866482
Oh better a video, I hope you don't stuff it with too many hitscanners enemy as it would be a annoying trying to dodge on those narrow area. Reminds me of a few russian mapsets where the player spawns in a apartment.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
05ed6e No.16866679
>>16866492
Binary is already a language. Only by using an analog computer can you truly make a video game.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b30bb5 No.16867477
>>16865809
a* is a bit more complicated and wouldn't make that much of a difference considering the grid size I'm aiming for (plus some wonky calculation with movement costs I'd have to work around as well).
still need to figure out how to do the graph anyway, most stuff I've looked at simply builds it via array and from there the visuals, while I'd need to do it the other way around due to a non-uniform and growing grid. was thinking of simply collecting each tile's coordinate into an array (which would have the bonus I could easily set the padding between tiles), but haven't tested yet how slow and what a performance hit it might be building the graph this way.
>>16866368
https://www.doc.ic.ac.uk/~susan/475/unmain.html
>>16866465
>Feeling like you *have to* build the engine is an outdated mentality.
imho it simply comes down to what you want to do, and that seems to be the difficult part for most people.
if you just want to make a game and see if your ideas work out, it's simply overkill. if you're into the technical aspect, why not, but of course you won't make much for a while (of that is your goal to begin with).
>>16866558
>Blender isn't hard to use, that's a meme likely perpetuated by software companies to get you to buy their shit.
usability is hardly a criteria why companies use several expensive programs at once.
but yeah, if you're a solo dev and just starting out blender is more than fine, and once you learn the principles it's not hard to apply them somewhere else.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aadd58 No.16868073
7DRL The Minotaur's Lair
Well its 6 o clock so my seven day roguelike is over. I'm pretty tired so I'm going to upload and submit it tommorow since the jam goes until sunday.
Heres what I got.
https://mega.nz/#!prgEmKKL!91p4h_TK3v-2Or4stobgtbt507h4wYyyEcuNHwnjk54
Feedback is still nice even though I can't really change it since it would be cheating to change anything at this point.
Basically the object of the game is to run around the Minotaurs lair getting as much loot as possible before dying. At first the minotaur randomly wanders from room to room but as you collect more loot he will start to follow you, then speed up until he's finally smashing walls apart to get to you.
CONTROLS:
WASD for movement
Y to throw ballbearings
T to spike the ground
Q to wait
ESC to release your mouse
Was going to add VI keys as a joke but forgot and then ran out of time. oh well
The game can be played in real time mode or rogue time mode. Real time is exactly what it sounds like. In rogue time things only move when you do so you have time to think when things are getting hairy.
TIPS
The Minotaur's ai works differently when he can see you and when he can't so its a good idea to run around the closest corner when he sees you. Also he won't go underground so its a good idea to have an idea of where the basements are when he really gets going. The ball bearings collisions are a bit off so its better to use them like pocket sand and throw them right at the Minotaur. If you see blue gems, they were dropped by the Minotaur so if you see them he's not far away. Chests only spawn in rooms with one exit so you'll have to think about if its worth it to go for them. Also remember that in rogue time mode things only move when you do so you have to either wait or move for a door or chest to open.
Hope you enjoy it, but so far reception has been mixed lol.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aadd58 No.16868094
>>16868073
Oh also there a few dungeon gen bugs that rear their ugly heads every 10 or so runs. If you are doing super good and havent seen the minotaur he's probably walled in. Or you are walled in, however you want to think of it. Just restart and it should be good.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16868108
>>16868073
Who says you have to stop working on it? Declare this version 1.0 and say that only 1.0 is submitted for the 7DRL contest, then just continue on making improvements. I don't think you should feel you have to abandon a project just because it's being submitted to some contest. Sure, you'll have to resist the temptation to resubmit new versions, but that's all on you. You'll always have version 1.0 to view as the thing that you were able to do in a week.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
aadd58 No.16868117
>>16868108
Yeah I just meant that I can't submit any changes to the jam. I'm going to keep working on fprl. The Minotaur's Lair was just a fun experiment.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
09fcf9 No.16868171
>>16866251
Added attacks (light/medium/heavy), need to rewrite to use hitscans and update arena/targeting mode. Spent 2 hours trying to fix view cones in radar view of Terminal, reworking script. The issue was the Panel I draw on had an Alpha value of 0.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
619c03 No.16868292
>>16853633
fuck, that looks beautiful
>>16853505
wait people have made small stuff in months, are your guys looking at how the devs that came before you did it?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4ed42b No.16868351
>>16865054
C is just C++ with less tools. Most C code compiles fine in C++ with minimal changes, even shit from the 90s. I should know, I worked through Petzold's book last year and all his examples work just as well when compiled in C++, with maybe an explicit type cast needed to be added in to a few lines here and there.
Even if you only use a few features from C++, it's still way better than C. You can write C like code in C++ and take advantage of C++'s superior libraries streamlined features like range for loop.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3fde36 No.16868476
I think I'm gonna make a design bible. Any anons have experience with this?
I keep remaking the same shit over again without ever really settling on a design/style and then expanding beyond my original scope and getting overwhelmed. The Star Citizen thread made me feel like I was falling into the same trap.
So, to whit, a design bible that lays out what the game is and what it contains so I can get a clear idea of what it is and what everything will do.
What should a design bible contain?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
75c489 No.16868803
>>16868476
I, personally, go over it with a few steps. First, I lay out the general summary of what I want my game to include. This means things like the the overarching goals and tidbits that make my game unique, not the precise mechanics. That comes later.
After that, I lay out, in sections, each mechanic to be created. I usually do this in an alpha format (so section one is alpha v 0.1), but you can do it however you like. I then give that alpha a "theme" as it were, and fill it with the appropriate designs that match that theme. You then simply go down the line, creating sections and designs until you are satisfied with what you want to put in. Take a look over what you have, cut down any unnecessary fluff or things you believe outside of your skills for a reasonable time frame. Then, stick to it. Modify if you have to, depending on you growing design philosophy, but don't add anything. If it's absolutely necessary, like you forgot something, then sure. But if it's just "cool" or "I'd like it to be in", then don't. You have a goal for your game, and what your game should be, and you need to reach that goal without useless distractions.
This is more a design document strategy than a design bible, but I think it works just as well.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16868895
https://jary-jurax.itch.io/the-minotaurs-lair
Submitted and published. Guess I'm a super low tier yesdev now.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16868912
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
eb04a9 No.16868917
>>16868912
Screen fades to black when the Minotaur gets you. Use your imagination.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
f8a1de No.16869204
Streamable embed. Click thumbnail to play.
Some more footage of my catgirl platformer.
Added sound effects and an NPC character. She'll be used for testing out dialogue boxes later.
Kasha's run animation also needs to be updated as it's a little stiff. I already have a newer one where her head bobs a bit more.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
902911 No.16869213
>>16868351
The reason you'd want to use C over C++ is to avoid the libraries and features. They're too over generalized to save CPU cache/System calls, which are a large bottleneck in programming these days. There are objective reasons to use C over C++ it's just they're very niche and only if you want the absolute highest bleeding edge performance.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
578cec No.16869465
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16869482
The enginefag / nonenginefag debate is not very interesting or important. Probably the first, and most important thing to keep in mind is that at least 80% of the people here who are working on projects are not skilled enough to finish them. Making these debates a somewhat meaningless argument about what unfinished project people will end up with. It's just masturbation when this stuff is generally motivated by interests and skillsets.
Artists and other medicore programmers do not need to hear that they should be making an engine in C; it's already enough to be learning C# or some other pajeet language on the side as a means to an end. Similarly actually skilled programmers do not need to hear programming advice from artists or other mediocre programmers about how difficult/useful/not useful some technology is.
You might notice that these two paths further compliment the existing skillsets that are required for them- the unityfag will make loads of assets in blender, despite never really being good enough at programming to turn them into a game- while the enginefag programs his cool OpenGL demo, which is really on some level just a way of putting off the part where his game needs actual art and music that he isn't capable of making.
This also raises another point: if you really are skilled enough to finish projects, and someone is giving you advice here, you're taking advice from someone who is less capable than you are. This is somewhat of an oxymoron because someone really on this skill level would not need any kind of general advice about what programming language to use, whether to use or make an engine, etc. they would already know what is needed.
Most narratives about how easy or difficult or useful a technology or language is stem from narratives about technology that are created by managers to manage masses of less talented people. Just because you aren't skilled enough to do something (or just refuse to try) doesn't mean that you need to drag down the conversation with your slave mindset. Disregard everything about programming on the wiki and listen to the opinions of successful programmers (not managers) if you really don't know what to do.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9dac04 No.16869663
>>16869482
What next, ban all questions because everyone in here is too much of a n00b to give valid answers?
When I was starting out I had a lot of questions that I couldn't find answers for. Someone who's just starting out has very little to no understanding of game development and even less context for how useful it really is to make your own engine. You might look at Factorio moving millions of items per frame on toasters, and then compare it to a bloated Unity game that requires high end PC horsepower just to walk in an environment, and then think that engines are complete shit and go on thinking that you need to make your own engine to have any kind of technically sound game.
You only need to be above the "starting out" level to be able to give at least some kind of advice to someone who is at that level, besides some of the advice might have been adopted from other much more experienced developers such as Casey or Jonathan Blow who stream often or C++ DOD man whose name I forgot. All 3 of the aforementioned have decades of development experience, have worked on highly successful and/or AAA-tier games, advocate for either C or C++ without most of it's features, and think that making your own engine is valuable.
Usually the worst advice is to tell people to do this and don't do that. Instead you should weigh the advantages and disadvantages of things and let each person make the decisions on their own.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16869681
>tfw you finally manage to render something in 3d
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16869698
>>16869663
>What next, ban all questions because everyone in here is too much of a n00b to give valid answers?
You're missing the point- that anyone capable of making a game is also capable of answering this question- thus any debate about whether being an enginefag or not will or wont result in a game is irrelevant because the person listening to the debate is not experienced enough to finish their projects.
And are these really valid answers? It's just people butting heads over what skillset they decided to specialize in, trying to get everyone else to use "their lane" because they understand it and don't know why people would do something else. The big argument above us really is just a "do this and don't do that" argument. A "you care about X but I don't care about X so your point is invalid…", etc. All presented as actual advice or… answers. Stuff that can never be useful because its so decontextualized from any real scenario that it doesn't matter.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
09603f No.16869699
>>16869482
this is probably the most retarded "/v/ is one person" post I've ever read
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16869701
>>16869698
Post progress instead of this anti-intellectual garbage prose.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16869702
>>16869699
>a post about multiple people who had an argument and discusses multiple perspectives is a "/v/ is one person" post
are you illiterate?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
303e12 No.16869740
>>16869482
That is some quality autism, but the debate is one of practicality and not the virtues of building an engine or anyone's tru skillllz. You sound like an autistic nodev.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
bbf5ac No.16869852
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
edb75e No.16869862
>>16869482
You're right about it as time is everything in game dev. You're not wasting your time if you're using an engine like Unity/Unreal as you're exposed to the latest tech while learning a industry standard workflow that can be adapted anywhere else. It'll even help with enginedev once you encounter limits. A lot of great programmers working on complex projects, started from simple ones or fun as it motivates them to continue programming.
The excuses of "bad optimization" is a cope beacuse you will improve performance from feedback by consumers. Especially if it's a well documented engine like unity/Unreal.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16869866
>>16869852
Calm down there, anon.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16869882
>>16869862
Purpose of Unity and "industry standard" workflow is for managers to minimize risk within a project. If you accept the speed loss, and follow the guiderails, you will be slower (inherently) , but optimization is about meeting your performance target, not being "fast" according to some arbitrary metric. You should be able to define how fast or slow a project will be in-engine for 95% of the kinds of games that can be made. If you cant predict how the engine will handle the game, that is a good sign you might need to use your own engine.
Latest tech is almost by definition something that is more advanced than what exists in Unity/Unreal. The industry standard workflow is in fact the limit on technology, has less and less to do with the state of graphics programming as hardware gets faster. Most innovative techniques do not scale to actual games because the toolchain for them does not exist.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
911dd9 No.16869945
How difficult is it to make a VR sex game?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
52b351 No.16869959
>>16863464
>>16863335
Thanks for the feedback. I think I go with a simple UI. Look, Use, Talk, Take and perhaps a Combine command for Inventory. The puzzle needs to be in the items and scenes and not in the UI.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16870176
Tomato redone, it is now a trellis crop
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
59a631 No.16870180
>>16869945
Not difficult, as you get automatic sponsorship from Tel Aviv University.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
349be1 No.16870750
>>16869702
because knowledge and experience isn't fucking binary. /adgd/ is full of different people with different levels of expertise doing different shit who can comment on different things because someone somewhere probably has done it already or simply knows about and thus can offer advice. also look up what secondary opinion means dipshit.
basing your hot take on calling everyone a noob unironically is shit you don't even see on cuckchan often.
like
<if you really are skilled enough to finish projects, and someone is giving you advice here, you're taking advice from someone who is less capable than you are. This is somewhat of an oxymoron because someone really on this skill level would not need any kind of general advice about what programming language to use, whether to use or make an engine, etc. they would already know what is needed.
how the fuck do you think people get skilled in the first place? and let's not talk about how seasoned devs for the most part never work alone for a reason.
next time just post a wojack so people know what to expect from your posts.
>>16870180
what if he didn't want to make a blacked game.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16870756
>>16870750
Nice "I didn't read the thread" post retard . I'll give you some help, the discussion my post is a response too starts here: >>16865054
Only takes a few minutes to avoid wasting your time on a (1) and done response that has nothing to do with the topic at hand. Not that the post didn't already establish itself as a contextualized response to an existing debate and not some vauge platitude about how nobody here is qualified to discuss game development.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16870764
>>16870756
>>16870750
Also, because the thing you quoted might be vague: people are capable of giving advice on problems that they've already solved. 95% of the people here have not solved the problem of "using a tool to make a game". The ones that have know better than to give decontextualized takes about whether coding everything in C or using Unity because writing engines is "outdated". It's just useless advice to give without any context behind it; people reaffirming the value in the skillsets and ideas about gamedev they've invested themselves into. The blind leading the blind …
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
3b3174 No.16870873
>>16870756
> I'll give you some help, the discussion my post is a response too starts here: >>16865054
Thanks for reminding us how autistic you are.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
23155a No.16870875
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d67538 No.16870876
Everyone is wrong, including me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c09365 No.16871462
I've been having a feeling I should have trying to do a 3D game like ultimate ghost and goblins, but I don't know if that would be harder or take longer than a purely drawn game.
I'm new to this so I don't know how to make backgrounds feel like backgrounds and characters not feel like they are in MUGEN out of consistency from everything else.
What is the right approach here?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e07807 No.16871714
>>16871462
IMO making something look good is a bit harder in 3D due to the animation part and how you play it, while you can "just arrange" it in 2D with different frames; but both approach is hard regardless.
Maybe adding some background layer would help, as in having "far" background and nearer background object.
On my end, anon shmup reporting:
Code at work didn't need much fiddling, but didn't feel well for february inb4 corona but felling better now.
At least fixed a bit trails management, it was working somehow by luck, but now it's better, still with some glitch, probably when looping around.
Also worked on attaching trails/particle generators on models, having trails that change shape, and currently working on using texture on trails, it's almost there but the dynamic UV texturing is still wonky.
Also arranged a bit materials management, before it was 1 material<=>1 possible texture, but all textures don't need to be "high" res so it's wasteful. Now I can have multiple material reference different part of a same texture, and I could after try different texture for my explosion since it looked interesting when I was debugging some test trail.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16872236
>>16871462
I think there's a lot of ways to go about it but me, as a programmer, mostly went into the technical details of art. Setting up a palette, resolution, pixel densities etc. I think that's a good approach if you're not very artistic like myself.
Any opinion on input libraries for C++? I'm used to both SDL and SFML but I just need input.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16872249
>>16872236
Can't help you much, besides saying that I've used SFML with C# and enjoy it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
472f8d No.16872257
>>16872236
https://github.com/wgois/OIS or https://github.com/jkuhlmann/gainput
I personlly like the latter, Gainput, but it's not actively being maintained so as time passes it might become less useful. But at least it doesn't shove a COC down your throat.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16872346
>>16872249
Yeah I've used SFML with a c++/lua engine I built which worked fine but I wasn't the biggest fan of the object structure if I remember correctly. On the other hand, I have gone full c++17 in my project so it feels dumb to use SDL, at least without a cpp-wrapper.
>>16872257
Thanks, I will look into both.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16872348
who can guess which crop is this without reading the filename?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
88a907 No.16872370
I started to learn how to make shit 3d models.
I don't even want to think about 3d dev right now since I have to use a new (aka a 'real' engine) engine that supports it and all the faggot shit that comes with it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16872431
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
db5bab No.16872495
>>16872348
dude, weed, lmao
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c09365 No.16872502
>>16871714
It's hard to quantify the hardness of those two different approaches, but yeah it seems quite similar. I better stick with what I know best.
Also, RIP.
>>16872236
I never understood that "palette" thing. It makes no sense to me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16872541
>>16872502
>I never understood that "palette" thing. It makes no sense to me.
It's just to limit what shades you use to make it more cohesive. It's also about keeping even quality over time and multiple people. You sacrifice artistic freedom for better productivity since you can't really question what colors to use.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16872557
>>16872502
Working with a limited palette is useful, even from a strictly art perspective. Grab maybe 5-10 colors, and you can blend them in varying amounts. Think of them as your base paint colors you squirt out a tube, as if you were an artist. Like anon said >>16872541 it helps you maintain a bit of cohesion even if you blend and alter many variants of that palette together.
If you're making a game with pixel art, a stricter palette is essential for each thing you're making. Outside of pixel art, it's a helpful guideline.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
c09365 No.16873122
>>16872541
>>16872557
Fuck, the thing is, I love art like this, so it makes me wanna puke when I can't experiment with colors.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16873131
>>16873122
Don't mistake a palette for a style guide either. The style guide would include something like a few color samples (that you can use as a base to build a palette) and say shit like "Outdoor scenes in Havenwood should be gray and brown and look dreary to reflect the miserable mood of the inhabitants. Even highlights and important objects should be cool-colored to emphasize this (such as the roof)"
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16874195
Lots of animated objects at once, now I don't have to worry about fps death if the players make a farm too big
Actually 30k after I enabled Burst Compile, but I don't want to remake the webm
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16875462
Got basic scene rendering down now. Next step is to implement texturing. Boilerplate hell so far.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1a086 No.16876132
Finally ported my shitty maze game to windows. Time to work on a real game and stop doing autistic engine dev.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a381e0 No.16877321
>>16868171
Action Points and Tek Power implemented, AP burns when sprinting (every 2 meters so far), NPC view updated so they can't see the player through walls, and Radar is visible if Radar window is open in Terminal even if Terminal is hidden.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16877613
Has any enginedev tried Direct3D? How is it compared to OpenGL?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16877618
>>16877613
Directx11 is the same shit as OpenGL 4.5 with the exception that if a GPU advertises a certain feature level of DX11 it's guaranteed to work due to certification, not the same for OGL. Everything else comes down to taste and if you're going multiplatform or not. 90% of the graphics code you write is API agnostic anyway so it doesn't really matter in the long run.
I prefer OpenGL
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16877625
>>16877618
I'll definitely want to support Linux at least, but I just personally dislike OpenGL to the point where I'd consider using a different thing for Windows and do an OpenGL/Vulkan port for Linux sometime after the game is done. I've also heard that some version of Direct3D was really good, but I have no idea what that meant.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb9252 No.16877626
>>16877618
How the fuck did the BMTH lead singer become a meme?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16877629
>>16877625
Both DX11 and DX12 are really good. But once you step into DX12/Vulkan you increase your dev time probably by an order of magnitude. Even then, making a multiplatform game is hard as fuck. Just supporting all 3 GPU vendors is a pain in the ass, let alone several operating systems. Reconsider making your own engine if you want to go fully multiplatform, it's the one thing ready made engines do really well.
>>16877626
Never before have I seen a band sell out on their level.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e55661 No.16877877
>>16874195
Good job.
>>16877629
>Never before have I seen a band sell out on their level.
What did they do?
>>16875462
Are you the anon who made RedSky?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16877902
>>16877877
>What did they do?
Went from deathcore to pop with a single album while pretending their old fanbase didn't exist.
>>16877877
>Are you the anon who made RedSky?
Never heard of it, sorry.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
93423a No.16878755
>>16877321
Picked up sprites again, drew outlines for right walk loop and I'm working on that right now. Also I now realize that I have to change the import settings for my sprites in Godot.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
93423a No.16878849
>>16878755
Finished enough for now, started making the outlines for walking upstage.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16879312
Finally got multitexturing working. Pic related is the emissive texture. I also realized that my content manager had some concurrency issues so before I go on to make more features I'm going back and redoing a few parts of my system. I have no idea why you have to submit image ownership transfer twice, once for each queue while the work is still only done once. Seems really obtuse and "just because".
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16879327
>Have static class that contains a bunch of methods to convert byte[] to primitive C# types
>Also has a Read() and Write() function that takes a IWriteable interface to automatically hook into appropriate functions
>Have no fucking idea what to name it
Right now it's called ByteHelper. The base language also supplies a BitConverter class, so I think ByteConverter would be confusing to use
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
fb63e6 No.16879344
Who else is getting a lot of extra dev time thanks to Corona-chan closing everything down?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16879450
>>16879327
Name it SerializationHelper and just keep extending it with anything related to serialization/deserialization.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16879512
Got some more RTS buildings done recently.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16879881
>>16879344
I am. And I've wasted all of it.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a9e03b No.16879919
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
64d6c0 No.16880213
>>16879512
Neat, just what we need in this current RTS apocalypse, you've already done a better job with this than EA with the Command and Conquer remasters.
I like the level of detail seen here, What kind of scale are you using for the games buildings to units, I always hated how RTS games dealt with an unrealistic scale with massive units and small buildings.
How limited is OpenRA for your game? is it extendible to the point where you have a lot of freedom with the kinds of units and structures you are creating.
This project continues to look great, keep up the good work.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16880235
>>16880213
>I like the level of detail seen here, What kind of scale are you using for the games buildings to units, I always hated how RTS games dealt with an unrealistic scale with massive units and small buildings.
yeah, that's part of the idea, though this faction in particular has very large buildings as a sort of gameplay mechanic (other factions have an easier time expanding due to smaller building sizes). Pic related is a mockup of what it'll look like ingame.
>How limited is OpenRA for your game? is it extendible to the point where you have a lot of freedom with the kinds of units and structures you are creating.
It's a pretty flexible engine, I'm surprised with the amount of stuff I can do with it. Only current big snag is no 3D model support (this is necessary if I want to have vehicles that actually tilt and rotate along slopes or aircraft pitching). But 3D support is a feature that will likely be implemented Soon(tm).
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
57d693 No.16880310
Openworld dev here, been procrastinating HARD on this project. For reference, I wrote a checklist on Feb 23rd because I wasn't getting anything done, and then didn't start doing anything on it till last night.
After I'm done with everything else, maybe I'll work on some actual enemies. My main problem when doing gamedev is I'm never really sure what to do next.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16880314
>>16880310
Are you doing a full game or some open world base for somebody else to expand upon?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
57d693 No.16880317
>>16880314
Hopefully a full game. Not sure where I want to take it. Scared to write down any design docs because anytime I do that I get way ahead of myself and start designing overly ambitious stuff that would take me years.
Definitely want more of a Zelda-like approach. Puzzles, exploration, no heavy "RPG" emphasis. But that doesn't mean that RPG mechanics are completely out
The player model is just ripped from Mixamo and then I gave it some rust to look like the player's a zombie that's been rotting in a puddle of water somewhere. It's just going to be a shitpost so I'm not taking anything too seriously. After the project is done, I'd like to use scraps of the codebase to make a better game.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a14781 No.16880321
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16880352
>>16880317
Good luck, once you'll have the base, the rest will most likely be way easier and if you don't actually make the game you can probably still make some $$$ by selling the base.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16880362
YouTube embed. Click thumbnail to play.
>>16880310
you're not doctard, are you? I miss doctard
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
8cf4eb No.16880374
>>16880362
That game doesn't look familiar.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16880375
>>16880374
what do you mean
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
57d693 No.16880376
>>16880375
Is that doctard's game? I'm not doctard, nor have I seen that game before.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16880385
>>16880376
eh, he hasn't come back since 8chan shutdown. http://8agdg.wikidot.com/aoeanon not up to date but that's the guy
he'd likely have similar experiences in devving those open world-style games, maybe he could help you if he was around
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16880430
>>16880385
Just send him a message on his video, maybe he'll come back.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16880583
>>16879512
these look really good
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16880675
>>16879327
Well I pushed through and finished off enough of my project to make it usable in other projects. Now I can get back to Super Metroid modding
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16881354
>>16880430
don't you think I tried
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16881930
Can anybody help me with my cellular automata cave gen? It looks unfinished everytime.
The first set of for loops is to fill the map with random wall or floor and the while(count != max_count) is where the cellular automata happens.
void random_generation::cellular_automata(){
for(int16_t x = 0; x < 40; ++x){
std::vector<int> r;
for(int16_t y = 0; y < 40; ++y){
int8_t number = rand() % 100;
if(x == 0 || x == 39 || y == 0 || y == 39){
r.push_back(1);
}else if(number < 40){
r.push_back(1);
}else{
r.push_back(0);
}
}
level.push_back(r);
}
int8_t count = 0;
int8_t max_count = 10;
while(count != max_count){
for(int16_t x = 1; x < 39; ++x){
for(int16_t y = 1; y < 39; ++y){
int8_t wall_count = 0;
for(int8_t xx = -1; xx <= 1; ++xx){
for(int8_t yy = -1; yy <= 1 ; ++yy){
if(level[x+xx][y+yy] == 1){
wall_count++;
}
}
}
if(wall_count > 5){
level[x][y] = 1;
}
}
}
count++;
}
}
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16881939
>>16881930
Are you writing to it in-place? If so, a previous row/col might affect the outcome
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16881942
>>16881939
>Are you writing to it in-place?
Sorry, I don't get it. What do you mean exactly?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
472f8d No.16881949
>>16881930
You might want to add a final pass where every wall that has zero neighbours has a high change of turning into an open space.
>>16881942
In-place means that you modify the map as you read from it, instead of working in a copy and reading from the original state, then making the new map the main one when it's finished.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
360f17 No.16881954
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16881956
>16881949
>You might want to add a final pass where every wall that has zero neighbours has a high change of turning into an open space.
I'll do it.
>In-place means that you modify the map as you read from it, instead of working in a copy and reading from the original state, then making the new map the main one when it's finished.
Yes, I'm using one single map, am I not supposed to?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16881970
>>16881956
>I'm using one single map, am I not supposed to?
If you're going tile by tile, row by row, when you check (x-1,y-1), (x,y-1), (x+1,y-1) and (x-1,y), you're looking at updated values, but all the other tiles are using non-updated values. You're mixing shit together
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16881974
>>16881970
So, I parse one map and update the second, then set the first one equal the second and parse it all over again?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16881981
>>16881974
Pretty much. But then, in graphics terms, this is similar to how your monitor refreshes. You have the displayed (final) image/data, and a buffer that gets written to, and they constantly swap
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
cfd0d0 No.16881995
>>16881954
Who is this sperm wyrm?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
472f8d No.16881998
>>16881974
It's faster to not copy the result over to the first map, but just to have everything that references the map instead reference a ponter to the map, and just setting that pointer to the new map.
>>16881954
>sgt. Hale is cheating on shinobu
This is terrible news. Did you get complaints, or just decide to be on the safe side and switch up the models you use in your videos?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
360f17 No.16882033
>>16881998
No it was just a test character. I test it with random characters all the time.
>>16881995
Kanade
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16882057
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b3ed8a No.16882119
>>16880235
I'm probably parading my ignorance here, but what about voxels instead of actual 3D?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
063498 No.16882259
>>16878849
Upstage walk cycle finished for now, needs edits, right stage and upstage anims still need arm swings. I want to record footage of playing around in this map but I still haven't set up all of the collision yet. And it needs teleporters. Working on downstage walk cycle next.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16882455
So here's the Power Plant, as well as an updated version of the Barracks. I realized adding red accented concrete was a much better look than plastering banners onto every surface. The final version will also animate with its obstruction lights and electrical coils.
>>16882119
I actually tried adding voxels for the Tankettes I made, and while they… sort of work, they look like ass, and have tons of limitations (the current size limitations means I'd have to have microscopic battleships and heavy tanks only barely bigger than the light tanks). Third pic in this post is an example; it's a screenshot of an older build, with little tan-colored Tankettes. As you can see they're pretty flat and grainy looking. Just not good.
If 3D model support never gets added, I'll just have all vehicles be 2D sprites. I'd lose functionality like tilting/pitching and they'd be poorly optimized, but at least they'd look nice.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16882691
YouTube embed. Click thumbnail to play.
Hey, anybody here knows about REing an old game to make an engine for it? Vid related shows some guy's attempt at doing exactly that and I'm curious about the subject because I'd like to be able to have an online multiplayer for some old games I used to play on old consoles.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16883395
>>16881954
I wanna see the bullying instead
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
b43c44 No.16883551
>>16878849
More sprites, using a shader to enable scrolling textures for liquids+caustics, and also cleaned up control binding UI (still needs script).
Regarding control rebinding: the idea is when you hover over or give focus to any of the buttons on the left in the controls menu, the Control Bind pane shows the button or key currently bound to the current action and the Action panes on the right become populated with the three Actions bound to that button or key. So Command 1's Free-Action could be Jump, Combat Action could be Light Attack, Menu Action could be Cancel. The left and right arrows cycle through applicable Actions.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e1133b No.16883722
>>16882455
Got more work done today. Also experimented with the lighting tools more.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
533f0a No.16883795
>>16883645
Low poly is easy, the texturing is the annoying part.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16884155
>>16883645
It's the pixel art of the modeling
Anyone can make it but not everyone can make it look good
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
80c433 No.16884178
>>16883645
There are a number of components that make it both easier and more difficult than other types of modeling. >>16883795 mentioned texturing. There's also UV unwrapping, rigging, and animating. Ease of animating depends largely on the quality of the rig, and ease of texturing largely depends on the quality of the UV's.
High poly modeling is the easiest, at least for me, since I can place geometry willy nilly without any concern for optimization. Really I just need to make sure I pay attention to topology to avoid minor problems becoming major problems. However, if I need to later modify that model it's more difficult. It can (and should) be made easier with modifiers, but that's still more difficult than just moving vertexes around.
With medium poly models you need to start worrying about abstractions. How can I represent this object while limiting the polygons? You don't need to make many very difficult decisions since you still have quite a bit of geometry to work with, but you don't have the freedom you do with high poly. I personally think it's the best balance between ease of UV unwrapping, rigging, optimization, and later modifying the model. What's nice about mid-poly is you can take a high poly model and usually, with some work and normal map baking, turn it into a mid-poly model that looks as good or nearly as good.
Low poly modeling requires making a lot of difficult decisions about how to abstract certain elements without loosing important details (such as hands and faces). Luckily you have examples to pull from (N64, PS1 and 2) to see how other people solved those problems in the past. You still need to be thinking about rigging and UV unwrapping while you model so it's not easier in that regard, and you really need to be thinking about texturing because much of the detail will have to be in the textures. The main thing is you can't turn a high or mid poly model into a low poly model that still looks good up close. You have to build with low poly in mind from the start.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16885206
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16885219
>>16885206
*Tetris Music Playing*
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ebc1b8 No.16885385
anon shmup here.
I was wondering why my trails looked strange and why it would become invisible at alpha ~0.8, turns out the blur effect and blend option weren't correct.
Needed to have glBlendFunc(GL_ONE, GL_ZERO) when switching around framebuffer since I only need the current layer and write on the output framebuffer regardless of content.
Then merge back with glBlendFunc(GL_SRC_ALPHA, GL_DST_ALPHA)
It's slowly starting to look a bit more interesting.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16885683
I was able to open a rom, locate the level data, decompress it, make a "brush" out of tile types, stamp it in 10 random places, recompress the level data, and write to file. Feels good man.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
80c433 No.16885907
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16886059
>>16885907
Well, thanks. While i learned a bunch, theres actually some fairly mature tools for modding SM so what I did specifically isnt very impressive in comparison
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16886835
I adjusted my main Grid class (from my parent framework/project) to have better support for Blit() as well as a Fill() operation. This works on any T[]. From there, I worked on tidying up and simplifying a few data structures and helper classes. It's still a fucking mess.
The level format for Super Metroid is interesting. It's compressed, and once decompressed, it becomes a byte[] of size equal to [5WH+2]. The first 2 bytes are an encoded value that describes to the game how long the level data is. The next block is UInt16 chunks of all tile data (which describes the block behavior, XY image flip and the image index to use (10 bits, 0-3FF)) for Layer 1. The next block is a byte chunk, which is a subtype for the main block type. The last chunk is again UInt16, with the same format as Layer 1, except it's for Layer 2, and has no behavior. So my code has to basically open the rom, write to that format, and then recompress it all.
My code to generate the room in pic related is here. https://pastebin.com/raw/Lc43MAGz
As you can see, it's fairly lightweight, though I want to make it simpler. The first bunch of it defines a "Brush" (actually a Grid) which can be blitted to another Grid. In this sense, I can define groups of tile data (or any data) and "draw" it. Once the room is finished, it all gets crunched down like a layer stack would, and then processed into game-relevant data.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16887814
We are making multistage harvestables for each plant, stuff like beans can be harvested as sprouts instead of waiting it grow, also most edible parts will be in the game, like Turnip greens + the Turnip root in one harvest
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16887837
>>16887814
This excites me.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16887891
>>16887837
Its a pain to make each new part tho, I still haven't decided if each plant that can have harvestable sprouts will have an unique sprout or if i will make a generic "bean sprout" or "grain sprout"
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
0dbfca No.16888150
I want to make an H game that is like Yakuza/shenmue and koikatsu
I want to use UE4 but the models are from unity and I dont know how if I am ripping the models correctly and it is a pain in the ass trying to figure out. Should I stick to unity or try to make the game in UE4
I chose UE4 is because I am familiar with C++ and have no experience in C#. Am I making a mistake sticking with what I know, or should start
If push comes to shove, I can always try to learn how to use blender and attempt to recreate the models
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e2ae5b No.16888182
>>16887814
you gonna add crop desiccation too?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16888284
>>16888182
No because there is no heavy machinery to benefit from it and crops planted in the same day with the same conditions will grow at the same rate, so they already get ready to harvest uniformly anyways. For cases like Soybeans that are harvested from the dried out plant we will just make the dried stage the last stage of growth so it is all natural.
We are using the following stage system to make clear for the player when each part of the plant can be harvested
>Seedling
Nothing because the seeds have barely sprouted (also players could harvest instantly after seeding if anything was available at this point)
>Sprouting
Sprouts, right now only Green Beans and Soy Beans, we might add harvestable sprouts for all grains later
>Vegetative
Plant has reached adult stage, roots and leaves are available for harvest if this is the right kind of crop (like turnips or lettuce), plants that can have multiple harvests will come back to this stage after giving fruits. Warning: most crop harvests at this stage kill the plant so if you need seeds you will have to leave some to flower instead of harvesting everything.
>Budding
Can harvest flower buds, stuff like Capers, Broccoli will be available both here and in the next stage
>Flowering
Edible flowers are harvested here
>Ripening
Mostly exist for animations (like a green tomato growing and becoming red), but Edamames are harvested here
>Fully Ripe
Fruits and seeeds harvested here, those harvests usually won't kill the plant (its a case-by-case basis) and upon doing so the plant returns to Vegetative stage.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16888616
First sketch of the crop tooltip.
i tried making as informative as possible, while not being too busy, we are against hiding important info from players.
From top left to right:
>Damage Warnings
A quick view here will inform players of causes of damage or plant stress
>Name
Duh
>Health Point
As the plant takes damage the final quality of the produce is lowered, plant HP does not regenerate, unless it has a trait for it.
>Growth Stage
They define possible harvestables as icons in the bottom right of the stage image, red border means harvests that will kill the plant
>Harvest Info
More detailed info on what you can get on the current stage, does not appear if there is no harvestable in the current stage
>Enviroment Info
Water is measured in droplet icons, most plants need between 2 and 3 drops, normal soil has 2 water naturally and watering the tile increases it by 1 for 12 hours, rain and cloudless dry days will also change the water content of soil
Nutrients
All the possible minerals a plant might need specially the main 3: nitrogen, potassium and phosphorus were cramped into those three made up chemicals, each plant require a certain amount of them daily (Turnip is 1 Ka 2 Pi) and the soil recovers 1 of each per day, use of fertilizers or crop rotation is important to keep the soil from being drained.
Temperature
Instead of making each crop season specific we decided to use temperature, and as long as the temperature is right the crop won't die
Soil Ph
Will be used mostly for very special plants (like Sugondese Nuts) and also to give some soils different features (soils near the city = 6.5~7)
>Plant traits
Those are the Hereditary traits, this is the plant "dna" each trait has up to 3 levels (the balls in the bottom) which change the intensity of the trait.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16889546
Are there any known techniques or research on disconnecting landmasses? Let's say you dig out the base of a mountain in Minecraft, and then the whole thing falls down with gravity.
And I mean really large scale stuff, not just "give up and pretend it's connected after path finding for 100 blocks". I'm more interested in the detection of the disconnection, not what to do with that information. For example I don't care if the blocks are then dropped 1 at a time, the question is how do you detect that the bottom is disconnected form the top in the first place? How would you keep track of the connections such that you could drop down the entire Terraria map like tetris without freezing the game. You'd also have to know which part has a connection to the bedrock and which one needs to fall.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
ecaaf1 No.16889572
Fucking took ages but now I finally have text rendering implemented. Had to rewrite my entire content manager because I realized I had concurrency problems in the old one. But now I have a fully multithreaded content manager with async transfers between host and device, it feels pretty great. Was one of the big things I wanted to learn when looking at Vulkan. Next up is actually implementing some shading, PBR with area based lights in HDR.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
d16fda No.16889575
>>16889546
I've theorized a way to do that for years, but never implemented anything like it.
I'd assume something like this would have to be done:
1 Add all bedrock tiles to a list
2 Iterate the list
3 For each tile in the list, for each adjacent tile that have no connection yet, connect it to yourself and add that tile to the list
4 if list not empty, go to 2
Eventually all tiles will be connected to something, then when you remove a tile, each tile that used to connect to it will search for a new tile to connect, if the new connection don't travel to the bedrock, you got a island, you can backtrack all connections to get the whole island
Red lines are connections
Blue dot is the tile that lost connection
Yellow line is the new path to bedrock
On the second removal, no new connection can ensure a connection to bedrock, therefore it's an island
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
80c433 No.16889576
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16890426
Do anyone know how to do a boxcast?
I can't find on google the code for it
I need to ensure that one of 4 raycasts on my terrain is the highest point on a square (to ensure there are no elevated terrain higher than the corners)
In the picture, I need to ensure that one of the red circles is the highest point in the white square, I think I need a boxcast for that, but I can't seem to find how to perform one anywhere
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
7ae144 No.16890431
>>16890426
Can't you organize all of the other points in order and then compare them to the 4 ray's length?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16890902
>>16889575
That'll help avoid huge calculations most of the time, but it still doesn't seem like there's an easy way to find the missing connection, like on the last block you'd have to check every tile in the entire map before you can be sure there's no new connection to make. It could theoretically happen even if there still is a connection.
Maybe you could just make it check X tiles per tick and accept that the bigger it is the longer it takes.
My original idea was to keep track of the edges of landmasses somehow, and search through the boundary to find stuff, but that seems pretty hard to manage especially when there's holes and 1-block thick lines. But I wonder if you could combine these 2 ideas, for example only find connection to bedrock from edge blocks. In your example you might have to check through huge landmasses, but in an edges-only system you'd only have to trace the outermost edge. If you create a new hole, it would go straight down until it finds another edge block or bedrock.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16890963
>>16890902
>like on the last block you'd have to check every tile in the entire map before you can be sure there's no new connection to make
you only need to check the 6 adjacent blocks, and where they lead to. You basically only need to follow up to 6 paths
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16890971
>>16890902
>>16890963
maybe it's unclear because it's reversed.
You as a block, is connected to bedrock, because someone who is connected to bedrock is pointed to you. In turn, you point to everyone you are connected to.
When someone who points to you is lost, you need to backtrack all your connections until you reach bedrock. Just do an A*
A full map will have every block pointing to all their adjacent blocks, so when you remove a block, all 6 adjacent blocks will need to check if they are still connected to bedrock by backtracking their connections
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9aa4ca No.16890991
>>16890971
With the A* search you can also keep track of the blocks that have been searched through. If the search doesn't reach bedrock you now have a contiguous group of blocks you know aren't held up by anything.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16891050
>>16890971
If you're going to pathfind to bedrock every time a connection is broken or if everyone is connected to every adjacent block, then what's the point of storing the connections to begin with? The goal should be to help the path finder find it's way.
But if every block keeps direction directive "towards" bedrock, then you might end up with a connectivity map that looks something like pic related, or maybe even more spaghetti-like. If you do a path find from the blue block it'll end up checking basically every block.
And if you don't keep direction data, you can't target the connection on the right side anyway because there might be many connections to bedrock, the path finder doesn't have a destination except "down".
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9aa4ca No.16891152
>>16891050
>If you're going to pathfind to bedrock every time a connection is broken or if everyone is connected to every adjacent block, then what's the point of storing the connections to begin with? The goal should be to help the path finder find it's way.
If you keep track of blocks that are adjacent diagonally you don't need to perform a check for every block that is broken, pic related. You would need to re-build distance-to-bedrock (more info below) but that can be done in the background.
You store connections so the graph doesn't have to be rebuilt every time you want to perform path-finding. You want a graph because that's the most efficient structure of data to perform a search on.
>But if every block keeps direction directive "towards" bedrock, then you might end up with a connectivity map that looks something like pic related, or maybe even more spaghetti-like. If you do a path find from the blue block it'll end up checking basically every block.
Use an undirected graph, not a directed graph. Rather than store the direction store the distance-to-bedrock (the number of steps needed to get from this block to bedrock). Using A* or some other best-first search, use distance-to-bedrock as the heuristic, using height as a tie-breaker (the lower block wins).
Let's take your example. Break the blue block and the path-finding algorithm will start by going "up hill", that is in the eyes of the algorithm the blocks are getting further and further away from bedrock. This will be the case until the distances can be re-built. However eventually the search algorithm will go over the crest and blocks will start getting closer to bedrock again. When this happens it's basically a straight shot, and you can probably stop the search. After acknowledging the connection exists a background thread can be used to re-build the distances to bedrock. You could build an algorithm that finds the crest of the hill and only re-build on the side that needs it.
<When the algorithm finds a block adjacent to a block that is closer to bedrock than the current block is, but is further from the broken block, mark the current block as a crest block.
<From the crest block, perform a search in all directions (leaving out blocks that have already been searched) to find a block that fits the same description as above (adjacent to a block that is closer to bedrock, but further from the broken block).
<Repeat until the entire crest is marked.
<Rebuild on the side that is closest to the broken block, checking for additional crests that may not have been marked.
>And if you don't keep direction data, you can't target the connection on the right side anyway because there might be many connections to bedrock, the path finder doesn't have a destination except "down".
Basically correct, but here's another way of looking at it. In graph theory terms each block is a node. Every piece of bedrock is connected to a single super node, which is the ultimate destination. There is a distance to it, and the direction to it is always "down" from where you are. But you only use "down" as a heuristic for tie-breaking, otherwise use the distance-to-bedrock heuristic as stated above. If there are many connections to bedrock then it will find the connection closest to the broken block.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16891291
>>16891152
>store the distance-to-bedrock
That's even worse though, it would keep doing world-scale recalculations not only when a connection is broken, but also every time you dig or place blocks deep underground. Pic related, if you break or place the blue block, all the pink blocks will need their distance re-calculated.
I just can't see how it's more efficient than tracing the edge, which only needs to fix the adjacent blocks unless a connection is broken, and when a connection is broken it only needs to check the outermost edge of the land mass. It also only needs to store a 1/4 the amount of data per block (or 1/8 or even 1/16).
In my previous example it would only need to trace the floor and left+right wall of the chunk to find the exit. If you re-place the blue block it basically doesn't have to do anything at all, but with a distance method it would have to rebuild half the room.
It might also not work as well in 3D though.
I've been thinking about this way too much today, but now I feel like even marking the edge is unnecessary. It wouldn't actually help you find your way easier, since you can just trace whatever edge you're at, and even do better since you can go straight down through terrain when you reach a "drop" instead of tracing every protruding edge. The original idea was that if you find another edge then you just stop there (since that edge wasn't the one disconnected), but that won't work since you can't know which edge is different than the current without looping all the way through.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
a9d30e No.16891367
YouTube embed. Click thumbnail to play.
>>16883551
Decided to take a break and edit MAP01 of Plutonia. I'm playing with Brutal Doom: Sperglord Edition, edited to include UT99 sounds and Doom 3 sounds.
>>16885683
I was just wondering about this project, keep it up anon.
>>16883722
I like these sprites. Is there gameplay yet?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
9aa4ca No.16891375
>>16891291
There is Open Spades
http://openspades.yvt.jp/
which seems to have solved the problem of detecting disconnected sections of land.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16891388
>>16891291
Just had a shower idea.
I kept thinking about how annoying it would be to constantly find your way all the way down to bedrock from the surface when you're for example building a house and break a wall. So what if instead of finding bedrock, you pathfind towards the opposite end of the disconnection?
Pic related, blue block is removed, yellow is the pathfinder. If one end runs out of ways to go, it's disconnected from bedrock and the other is not.
>>16891375
I'm not good at reverse engineering other people's code, but that's interesting. There's also someone in youtube making a voxel engine, and it can seemingly create physics objects out of anything that gets cut off.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
e58726 No.16891394
>>16891388
>There's also someone in youtube making a voxel engine
"Voxel Farm" was the name.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
55acdd No.16891397
>>16891367
Well, thanks anon.
Pic 1 is what I got done today. I mostly focused on testing what I have made so far to see if it's easily usable and not shit. It's still pretty cumbersome to use and namespaces are confusing, so I need more tidyup before I work on the generator proper.
Right now it works by flagging each screen as enabled or disabled. For each enabled screen, it checks E, S, and SE neighbors to see if they are enabled. If so, it sets a merger flag on that screen. It then does a second pass and looks at the neighbors and does a little more logic (partly for lazy bounds checking, partly for validation and getting diagonals). Everything is block filled to begin with, disabled screens get skipped, enabled screens get the middle bored out, plus other regions depending on their merge flags. In production, it would remove the corner blocks so there would be no islands in the big open space, as well as filling in screen edges of the play area (eg camera bounding).
Pic 2 is from about 10 months ago, and was my algorithm done by hand. The results would be based on the room width and height, enabled screens, and door placement. In this image, it would be roughly equivalent to the bottom left green part. The next step would be to rough up the edges and then place platforms, but this would be based on assigned obstacles and expected gear, so it's quite a distant thing right now.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16891986
Testing the new tile setting system, the tiles will now adapt to one another like RPGMaker auto tiles and become one giant tile.
Although right now they only adapt to the terrain, the code to pick which mesh to use is still not ready.
Image is testing the "I got another tile on all 4 corners" mesh and video is "I got no other tile adjacent to me".
This same tech will be used to make roads.
Next steps is putting on ECS, then Instanced Rendering the pieces, then making it draw the correct one based on it's neighbors
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
450275 No.16892583
>>16891986
I have an unsolicited suggestion for making the system easier to use. You seem to have trouble mousing over areas where a tile would be placed but it's either giving you red or not locking on.
To fix this, when you place a tile have it place 4 surrounding tiles on each edge. These 4 additional tiles are invisible and are on a special collision layer. When your hoe is selected and you mouse over one of these invisible tiles (detected with a raycast) the current model at your mouse (the mouse-tile) is made invisible, and the invisible tile is made visible, textured to match the mouse-tile. When you click, the tile is placed for real and removed from the special collision layer. New invisible tiles are placed at the empty edges of the just-placed tile.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4aafa7 No.16892928
>>16892583
>You seem to have trouble mousing over areas where a tile would be placed
I've increased the range for detecting adjacency, so it snaps easier now, it was only an issue on very inclined terrain, which will probably not support tiles/roads anyways
>To fix this, when you place a tile have it place 4 surrounding tiles on each edge. These 4 additional tiles are invisible and are on a special collision layer. When your hoe is selected and you mouse over one of these invisible tiles (detected with a raycast) the current model at your mouse (the mouse-tile) is made invisible, and the invisible tile is made visible, textured to match the mouse-tile. When you click, the tile is placed for real and removed from the special collision layer. New invisible tiles are placed at the empty edges of the just-placed tile.
I can increase the range even further and simulate further tiles instead of actually making them, or even, locking you to a certain grid temporarily, which is probably the preferred solution, but it will require some UI and it's not really a priority for now
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
717ac8 No.16892946
Would anyone be willing to tell me where I'm going wrong with a small isolated piece of (noob) C code?
I'm trying to make a quake-like entity system with function pointers for behaviour (Passing in the entity struct via reference as "self") but I keep geting segfaults.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16892970
>>16892946
>Would anyone be willing to tell me where I'm going wrong with a small isolated piece of (noob) C code?
Not if you don't post the code.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
717ac8 No.16892977
>>16892970
Well, I was just gauging interest but here's the stuff. (https://pastebin.com/gXubLEcz)
As I said, I'm still shit at C so forgive any hilarious mistakes.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893014
>>16892977
Your mistake is in how you handle memory.
"Entity" is your struct type. "Entity*" is a pointer to your struct type.
You create an "Entity*" variable named "ent1". This variable does not contain your Entity struct, merely a pointer to an Entity struct. You didn't initialize this pointer variable, so it most likely points to some memory that will trigger segfaults when you read or write to it.
In addition, your usage of function pointer types is wrong. EntityDef.behaviour is of type "void (*)(Entity)", which is to say, a pointer to a function which takes an Entity struct and returns nothing. You then declare two function prototypes behaviour1 and behaviour2, which have the type "void (*)(Entity*)", which is a function that takes an Entity struct pointer and returns nothing. The former takes a struct; the latter takes a pointer to a struct.
Third, the way you call Entity.behaviour is also incorrect in the current context. You pass "&ent1" into this function, but "ent1" is of type "Entity*". The & operator returns the memory address of a passed variable, so you will pass a pointer to the Entity pointer "ent1", which is of type "Entity**". (Pointer to pointer to Entity)
C/C++ is different than most languages in how it forces you to manually manage memory. You have to decide at every definition whether the variable actually contains the data, or is just a pointer to data. After you get your code to work and understand it; you should also read into the way stack and heap memory work and differ.
Here's a code snippet to make your life easier:#include <stdio.h>
typedef struct Entity {
void (*behavior)(Entity*);
// fuck other vars lmao
} Entity;
void CoolEntityBehavior(Entity* e) {
printf("put your finger on the trigger when you hear the snicker of a nigger");
}
void ChangeBehavior(Entity* e) {
e->behavior = CoolEntityBehavior(e); // We use e->behavior here instead of e.behavior because e is a pointer to a variable.
}
void main(void) {
Entity e; // Contains an entity!
e.behavior = ChangeBehavior; // We use e.behavior instead of e->behavior because e is the actual variable; not a pointer to it.
e.behavior(&e); // Calls ChangeBehavior, setting e.behavior to CoolEntityBehavior. We prefix e with the "&" operator to obtain it a pointer to it.
Entity* ePtr = &e; // Contains a pointer to an Entity (e).
ePtr->behavior(ePtr); // Calls CoolEntityBehavior, by using the ePtr. We use "->" because its a pointer, and don't prefix the parameter with & as it's already a pointer.
}
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893020
>>16893014
>>16892977
Also always pass "-Wall" (warn for everything) to the compiler and fix every warning compilation provides. If you think it's not important to fix; fuck you fix it you dumb shit.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
717ac8 No.16893035
>>16893014
>>16893020
Aha! Thanks anon!
Very informative and coded like a gentleman.
My compiler is complaining about entity not having the behavior member but I suppose that's one for me to figure out. Can't into C without dealing with them at some point.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893056
>>16893035
Double-check spelling. I used "behavior" (io) whilst you used "behaviour". (iou)
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893080
>>16893014
ops
>e->behavior = CoolEntityBehavior(e);
should be
>e->behavior = CoolEntityBehavior;
(no brackets, we are not calling the function here, merely setting our function pointer to it.)
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
450275 No.16893094
>>16892928
Seems like an effective solution.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
717ac8 No.16893174
>>16893056
>>16893080
Thanks for your further help.
I narrowed down the problem of what was happening. My compiler was getting angry at the passed type in the struct definition. It didn't like the asterisk.
IE:
>void (*behavior)(Entity*);
to
>void (*behavior)(Entity);
After that it compiled and worked fine with no crashes.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893236
>>16893174
Boy I love trying to give examples on C and then suffering over a million stupid roadblocks.
The example I gave produced an error because of a cycling definition problem. The following code:typedef struct {
cyclicStruct* ptr;
} cyclicStruct;
Produces an error; as the compiler does not know of a "cyclicStruct" type until it is fully defined, so it can't define a pointer to itself.
You have the same issue; "void (*behavior)(Entity*)" can't be defined to be a memory of Entity as the compiler doesn't know what entity is.
A way to circumvent this issue is to first typedef to a struct of incomplete type, then typedef the struct in full.
tl;dr:typedef struct Entity Entity; // Defines a type "Entity" to be of type "struct Entity". At this point, "struct Entity" is an incomplete type; the compiler now knows it exists, but if you use it you will get errors.
typedef struct Entity {
void (*behavior)(Entity*);
} Entity; // Redefines a type "Entity", but to the same "struct Entity" type. Because we now properly define "struct Entity", the type is now complete, making "Entity" useable.
The change you made is a change you do NOT want to make; as it changes the behavior of the code again.
Changing "void (*behavior)(Entity*)" to "void (*behavior)(Entity)" means you are changing the function prototype to take Entity by-value rather than by-reference. It will also cause warnings when you try to assign functions of different prototypes to it; and it will produce warnings because of the above-named issue anyway. Did I mention you should put on "-Wall" and read warnings? That's probably useful.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
da82f9 No.16893239
>>16893236
should be
>You have the same issue; "void (*behavior)(Entity*)" can't be defined to be a function that takes a pointer to Entity as the compiler doesn't know what Entity is.
getting real tired of this shit
thank god this thread is off to the graveyard; burrowing my shame forever
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
717ac8 No.16893248
>>16893236
>>16893239
Thanks man. That's more gold.
Don't feel bad about the errors, you've been far more helpful than the tons of coding websites I browsed trying to figure out where I was going wrong.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
de5380 No.16895746
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
7ae144 No.16895793
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.