/gedg/ Wiki: https://igwiki.lyci.de/wiki//gedg/_-_Game_and_Engine_Dev_General
IRC: irc.rizon.net #/g/gedg
Progress Day: https://rentry.org/gedg-jams
/gedg/ Compendium: https://rentry.org/gedg
/agdg/: >>>/vg/agdg
Graphics Debugger: https://renderdoc.org/
Requesting Help
-Problem Description: Clearly explain your issue, providing context and relevant background information.
-Relevant Code or Content: If applicable, include relevant code, configuration, or content related to your question. Use code tags.
Previous:
>>105797658
>>105812748Adding auto-scaling for the worker threads
>rewriting texture loading for the 7th time
>>105838803t. godot/unity/unreal/whatever crab
>nobody who actually makes games uses an ECS
I am starting to believe this, but not because of ECS as a design pattern, just because all (popular) ECS solutions fucking suck.
>use flecs
>no way other than wrapping your logic in defer to stop observers from triggering when creating a prefab
>you create a prefab and want to set translation, rotation, and scale without using defer
>observer triggers on translation before rotation is set
>whoopsie quaternion with W = 0 time to crash
>try to observe tag removal when an entity is destroyed
>whoopsie that doesn't actually trigger OnRemove observers because reasons!
Every single fucking system has different quirks and caveats to it that are completely inconsistent with each-other.
I haven't tried EnTT, maybe that is better.
>>105838873ECS is architecture astronaut bullshit that doesn't offer you any tangible benefit
I'm confused as to what ECS is actually useful for. Is it more scalable or something? I don't really get it.
>>105839008>doesn't offer you any tangible benefitAt least for 99% of games. If you start having 20k+ entities, yeah maybe.
>>105839226>more scalableThat's the idea, but the vast majority of games never get even close to the number of entities needed to really see the benefits of an ECS.
The ECS design pattern is good, the problem is that all the common implementations are bloated, shit, or bloated shit.
>>105839226It's more performant, theoretically
>>105839285>it works in theory
>>105839456I say theoretically because the practical reality is the things that ECS would give you big performance gains in you can do easier without using ECS
>>105839226originally it was just about overcoming limitations of inheritance based code reuse, popular in game engine at that time.
inheritance creates a tree with branches and it makes it impossible to reuse code from different branches. if you inherit a monster from enemy, you cannot use code from pickable class, for example.
ecs solves this by introducing traits based polymorphism. you tag your entity with traits like enemy, pickable, and appropriate update functions that are only concerned with these traits are being executed. this allows you to reuse update functions just by tagging entities (with components).
another popular approach is behavior based systems (like unity). instead of inheriting behavior from base classes, you just attach as many behaviors as you like to entity.
>>105839483ECS is not the alternative to inheritance you idiot, there's plenty of alternatives to inheritance
ECS was about making something that was faster than the regular game entity model
Is AI useful for game development? particularly in Unity as a beginner.
>>105839226at large enough scales oop and layers of indirection are bad for performance because not parallelizable not SIMD friendly not cache friendly not pipeline friendly so stick all the data that's the same type used in the same/similar ways in a big fat array and objects are just a tag used to index into that array somehow
i think a lot of confusion comes from dressing it up in gay academic abstract "implementation doesn't exist" language when it's 100% an implementation thing about data locality
key phrase being "at large enough scales"
if you're not going full high effort shitpost, like simdjson tier, and trying to actually squeeze every benefit you can out of what a properly data oriented designed system can get you you're probably not going to see real benefits
i've never actually heard of a tangible example of what counts as "scale" either, no one ever fucking mentions it and the few times i've experimented with using an ECS i've never hit it
maybe more complex strategy or 4x games?
>>105839672>i've never actually heard of a tangible example of what counts as "scale" eitherYou can comfortably handle 100,000 objects with OOP dynamic dispatch if each one just has a single update call per frame
>>105839672>i've never actually heard of a tangible example of what counts as "scale" either, no one ever fucking mentions it and the few times i've experimented with using an ECS i've never hit itWhen I consider scale I would expect something like Fallout or some RPG or whatever where they have hundreds of entities in the world interacting or like you said something like Civilization would be a good example. It doesn't really matter to me because I'm never making a game that big or complex. I don't really know I'm not exactly a big brain developer or anything I like to keep shit simple for my smooth brain so ECS to me feels completely unnecessary for me a big dumb dumb single developer.
>>105839777>hundredstry hundreds of thousands
>>105839672>just touch memory that is in different pages all the time because the systems need to interactwheres the locality?
>>105840900Don't ask ECS advocates this question
>ECS again
Holy shit you retards are still going at this Lego blocks shit. Make your own system for your own purposes instead of following retarded meme patterns unless you REALLY need to do whatever the specific system you heard some Youtube talking head mention (unlikely).
I made my own super stripped down ECS that works great for my specific use-case and never looked back. Very simple, extremely maintainable, better performance than any flecs/EnTT (since I can make many assumptions about my project), and it keeps the ECS style which I find logical and soothes my autism.
>>105840989You aren't any less retarded for making your own ECS
fun with rgb<->hsv conversion
>>105840989people here just like to fight over retarded shit
>ecs>oop>apisits always the same discussion
>>105841150is that fucking comic sans?
>>105841159nobody here talks about OOP or APIs
>>105841178c vs c++ never happens here, nor does opengl vs vulkan vs software renderer
>>105841197>nor does opengl vs vulkanI see that shit all the time here
>>105839226It's just to keep memory that you loop over in tightly packed arrays. Everything else about it is achievable in standard OOP
(note: HSV mode basically takes the base color and HSV-shifts it based on the light value, and ToonHSV mode is basically a toon-shaded version of HSV mode)
>By the order of the EU Copyright Abolition Commissar, you have 48 hours to release ALL the data on your computers
How do you respond?
>>105841634>How do you respond?Fuck off, I live in America. We can just stop giving a shit about Euros, full stop. Not that I give two shits about SKG one way or the other because I don't play live service garbage so as far as I care it can all get deleted. They should still kill Pirate, though because he's a furry.
>>105841668I think I'd sooner shake hands with the furry than with the communist.
>>105841577So you're shading in luminance? What if you tried different luma-separated color spaces like LCH?
>>105841753>So you're shading in luminance?IDK but I guess so
>>105841745Both these losers hands are unshakeable in my eyes. I'm sick of the EU trying to regulate everything. I honestly hope these stupid live service games just block the EU from accessing them all together. Sorry europoors you don't get to play Fortnite anymore because you wanted your government to control everything.
>>105841891>I honestly hope these stupid live service games just block the EU from accessing them all togetherI'll be nice and show them an affiliate ad for a VPN on the block page so that they can pay me extra for their own retardation.
>>105838873Nobody in their right mind uses libraries for something like that. I use ECS wherever it makes sense. Skill issue.
>>105842382NTA but
>I use ECS wherever it makes senseHow does "using it wherever it makes sense" make flecs less of an inconsistent piece of shit? If you use it, you'll have issues, because I've used it (granted it was years ago but I don't see anything change) and that anon isn't wrong: it has random quirks and bullshit everywhere that isn't covered and makes the whole thing a minefield to work with.
>>105841172Probably a BSD dev, they love the Comic Sans.
What games to develop? I need practice
>>105843078make world of warcraft
>>105843085But it's already made?
>>105843111idk, try elden ring then
>>105843067No, not a BSDfag, I just think Comic Mono (monospace comic sans) is neat
>>105842405nu-ECS libraries are obsessed with PERFOOORMANCE to the point of being unusable (but fast!).
This is just a tool to select which functions to apply to objects during gameplay. We need to go back to old ECS designs.
I'm not even really looking to "make a game". But I'm interested in learning C in my spare time, so I'm supplementing some textbook stuff with making a text adventure. Mostly I hated how 'pointers' felt so mystical to me.
I'm also trying this "vibe coding" a bit, or anyhow using AI more than I ever have in other times I've learned things. (I'm old, and have a math degree, so it was always just scouring stackoverflow or books or best, guided study from a good teacher.)
I think it's fascinating but a really brutal dead-end, worse than a dead-end even, for people who don't have programming experience and can't see the bullshit.
Today I gave everything a uint32_t identifier.
14 bits for flags, 6 for Area, 6 for Room, 6 for Entity/Object.
That's 64 total areas, 64 rooms per area, and 64 entities/objects per room in an area. With a bunch of slots leftover that can be repurposed.
I also made a time system that has around 4million ticks for 24 years of game play (it's an artificial cut-off, could add more or increase by an 'era' or something), with 12 months and 12 days per month. As well as 8 enums for early/late morning/afternoon/evening/night.
Getting down the UID system will help before I move to some kind of basic markov-chain weather system that's area-global, and incorporating light level with time that's probably global-global.
Thanks for reading my blog. No need to tell me I'm retarded, I already know.
>>105843643The biggest thing I've found about 'vibe coding' that I feel I haven't seen mentioned, is that even though I'm routinely inquiring into lines or sections of code that I don't quite understand, if I return 2 days later it feels completely like someone else's code.
Because that struggle/a-ha imprint was never there. The outsourcing of my brain activity, even if I actively ask to understand things, makes the code unfamiliar to me after a break.
>>105839483>inheritance creates a tree with branches and it makes it impossible to reuse code from different branches. if you inherit a monster from enemy, you cannot use code from pickable class, for example.I've never understood this, maybe it's a C++ problem? Many languages get around the diamond inheritance issue making it pretty easy to inherit from multiple classes like that. Can you not use interfaces or something in C++ for this?
i shall use something like COM as my game object model
everything has one or more interfaces but nothing inherits a non-interface class, and classes query eachothers' interfaces
(maxis did this for their older games)
What's /gedg/'s solution for baked lightning with procedural generated levels?
Some engines that'll make it possible to pack the light baking code into the runtime and have it run async in the background?
>>105843977You can OP is just retarded
>>105844438Baked lighting is deprecated. If you want GI you should be using a lighter weight dynamic method. SSGI, VXGI, etc.
>>105844503they either run slow or look bad though and are meant for highly dynamic scenes where lightning conditions constantly change.
I just want good looking outdoor scenes and lightning can be constant once the level is generated.
>>105843078Depends on your skill level. If you're an absolute novice who's never made a game before, i'd say pong
>>105843643>I hated how 'pointers' felt so mystical to me.prefiltered
>>105844605Haven't used computer languages with them before. Gotta start somewhere, how's your algebraic geometry or modal logic?
>>105844503>Baked lighting is deprecated.Faggiest shit to say ever. Not every game needs to be a large open world with real time dynamic lighting and a time of day system. Some people still want to handcraft and design levels/maps.
>>105844646The reason I'm saying "prefiltered" and not "filtered" is because you failed to study & understand the basics, fren. It's like me going "im learning algebraic geometry and I get schemes and morphisms of varieties, but a ring homomorphism feels so mystical to me"
>>105844837I guess I'm just not seeing the value of your input then.
altogether so, I don't understand what kind of filtering (or "prefiltering") you think you're witnessing. Like something has been halted?
Maybe you could be more clear or helpful.
>>105843704I've been trying to use AI to help with my decomp project. I've tried ChatGPT, Claude, and Deepseek. They all write extremely terrible C code that leaks memory everywhere and overruns every buffer. They're all weirdly bad at math too. They do however provide pretty good summaries, comments, and variable names that I can then stick in Ida to make things more clear. Ida's heuristics generate way more functional pseudocode even if it's ugly and barfs on some weird compiler-optimized pointer offsets. Fixing that up is completely manual unfortunately since I cannot trust the AI to do basic addition and subtraction lmao.
>>105844922You definitely have to give it a clear context to work with, and it's limited by its training. I imagine when you get into things like "decomp", it's got a lot less to work from just due to how much it has to parrot from.
It can't actually reason, so it's always going to shit the bed when it gets to niche topics, even if they directly relate to other things it """knows""".
hello agdg is super gay so i decided this is my home now
>>105844964Look at how you've started, look at the stink you've brought in.
No progress, no discussion, no response to anything upthread.
>>105844964post project or gtfo
>>105845042i'm currently studying erland because i saw a youtube video about it and realized it would be the ideal language for a mmorpg like i want to make im pretty sure im the first person to come up with this idea (dont tell anyone)
>>105843977you can't reuse code with interfaces
Competence crisis in 5 years or less
>>105845089My brother in Christ, you are not going to make a mmorpg as a 1 man team. Just use C++ and SDL like everyone else lol.
Why does everyone act like building an mmo is some magical ability? Sockets & networking arent that hard lol. The hard part is actually filling up your servers with real players.
>>105843460theres no such thing as "old ECS"
>>105845216>The hard part is actually filling up your servers with real players.Yeah and to do that you need A LOT of CONTENT.
>Sockets & networking arent that hard lol.It's annoying and gay is what it is
>>105845232Not necessarily. You can make a sandbox or procedural MMO.
2026 is the year MUDs come back, screenshot this
>>105845216an MMORPG is the most complicated type of game to write
>>105845258You mean a 3D open world MMORPG with hours of fresh, nonrepetitive, polished content?
>>105845278im not even considering the content
>>105845216Repetition and lack of imagination.
>>105845305No it's because they have a vague idea of what it actually takes to build one
>>105845282>>105845318Explain what is technically challenging about writing a server that maintains state and can sync said state to a few thousand client sockets. I'll wait.
>>105845332An MMORPG has a client program which is an RPG, which is already one of the most complicated genres to program because of the wide variety of gameplay mechanics it has, plus a distributed server backend for the "MMO" part
>>105839226IDK
I've had fun with Bevvy because it's an easy way to build something by writing a bunch of functions and having the message passing and queries and state machine stuff done for me.Other than that (managing data) it's not anything that amazing.
>>105845353>it's an easy way to build somethingexcept when you compare it to every other non-ECS way to build a game which is even easier
>>105845346You mean a 3D open world MMORPG with hours of fresh, nonrepetitive, polished content?
MMORPGs are actually no different than writing any other kind of game. Easier in some ways.
>>105845368im not even taking the content into consideration
>>105845373Yeah if you ignore the fact that they're MMOs they're just like every other game!
>>105845254>MUDsI was hoping to relive the mid 90s but when I looked at modern muds they're all either furfag erp shit or donate2win, a very sad state of affairs
>>105845376Then what technical challenges are shared by all MMORPGs without taking content into account? I'm asking a simple question. And no, you don't need a distributed back end for just a few thousand socket connections assuming a good enough network link on the server.
>>105845385You can't recreate the 80s/90s MUD scene even if you perfectly copied the games of the time. It's like classic WoW or P99 - even if the game is exactly the same, the players aren't. People have gotten weird and jaded from decades of internet exposure.
>>105845400>not answering the question
>>105845407MUD players were the original weird internet users
>>105845408I linked the post where I answered the question
The first M in MMO is Massive, which means a distributed server architecture
>>105845346>distributed server backendunnecessary
>a client program which is an RPGThe client does nothing but display what the server sends it.
>>105845419Define "massive"
>>105845421>unnecessaryIt's not an MMO if you don't do this, it's just an MO
>The client does nothing but display what the server sends it.Very wrong
>>105845409>weird internet users in the 90s:>>having an AOL subscription>weird internet users now:>>being a registered sex offender that thinks he's a woman and uses Rust unironically
>>105845432I will refer to my previous statement:
repetition and lack of imationation
>>105845231It's any ECS developed before unity started pushing its data oriented ECS as performance increasing. For example https://github.com/libgdx/ashley
nu-ECS is any "archetype" ECS concerned with cache lines and other detrimental to producitivity nonsense.
>>105845441It's got nothing to do with imagination, I just know what's involved in building a game and you don't
>>105845443What you linked is not ECS
ECS was a term coined to describe the architecture that is concered with cache lines and other nonsense
>>105845373the problem with mmos is that you have to work both on a game and a database service at the same time.
>use open source mmo backend from an existing mmo private server project
>write your own game client
name one (1) flaw
>>105845452>name one (1) flawIt's an MMO.
>>105845432>Very wrongMy MMORPG game's state is a big ASCII string sent to each client to be rendered. Now what?
>>105845452You've got the right idea. And those private servers don't use a distributed backend lmao
>>105845452There's been at least 3 different attempts by EQEmu enthusiasts I'm aware of trying to do exactly that and they all ended in failure. I think Turtle WoW has been working on an Unreal-based WoW client for like a decade now too?
>>105845459that's the online game equivalent of bogosort
>>105845464Practically if your game has a low amount of players you don't need a distributed backend but then it's not actually an MMO, it's just a regular online game
>>105845473Massively originally meant anything greater than an aoe2 lan party, i.e. > 8 players.
50 players was """""massive""""".
>>105845487RTS games support a low amount of players because they're P2P
FPS games could have 50 players, they weren't MMOs
Massive means it can scale to however many players you have
>>105845467Still an MMORPG. Now, define what YOU assume is an MMORPG for
>>105845346 to be true
>a client program which is an RPG
>>105845522ASCII RPGs exist. Next strawman, please.
>>105845473THJ runs the standard eqemu backend and regularly hits 6,000 concurrent players
>>105845558NOOO THATS NOT MASSIVE IF YOU DONT HAVE A DISTRIBUTED BACKEND NOOOOOOOOO
>>105845487Counter-Strike and Garrys Mod are my favorite MMOs.
>>105845487anon... there were MUDs with hundreds of players well before MMOs, even just normal multiplayer slop with online matches with dozens of players
the "massive" in MMORPG was just a marketing term
>>105845585They aren't MMOs but they are massive.
>>105845558the world sim is what determines the need for the distributed part and what needed to be multiple servers in the 90s doesnt need to be multiple servers today obviously
>>10584559350 isnt massive
>>105845593I agree, I was making a point.
>>105845604How about 256?
>>105845602the normal gameplay loop on THJ is "pull all 500+ mobs in an instanced zone then AoE them down", all with full pathfinding going
>>105845613the size of a large fps server isnt massive
>>105845628On the MMORPG discussion, are we talking turn-based or real-time MMORPGs?
Modded GTA5 online fall in the latter category, and is infamous for cheaters, inconsistency, rubberbanding, and crashes.
>>105845648how can an mmorpg be turn based?
MMORPG's are ezpz to make. I made one but you gotta write down everything in your inventory on a piece of paper and play with your own dice. We work on the honor system.
>>105845648If you can't trivially detect hax, you're a failure as a dev. If you can't trivially detect serious botting, you're a failure as a server operator.
>>105845448No. Nobody thought about ECS in that way before unity pushed it.
With object oriented ECS you can still have scene hierarchy, object.GetComponent<T>(), add methods to components etc. It allows to move update function outside of object and update by queriig the presence of components.
>mmorpgs by the 10th expansion
>"silver? gold? platinum? mythril? haha, no, we only accept yggdrasilium and oganesson "
>>105845707The term ECS doesn't mean what you think it means
>>105845671Why detect instead of prevent?
>>105845671>If you can't trivially detect hax, you're a failure as a dev. If you can't trivially detect serious botting, you're a failure as a server operator.Damn you must be a super genius. How do you prevent EFI and DMA style cheats? If you know the answer you should consider applying for a job at Valve because they will gladly pay you a shit ton.
>>105845723crazy idea here don't send the client any information that it doesn't need
>>105845744You're an idiot
>>105845726MUDs were real time, zoomfriend.
>>105845744That's a genius idea. You should sell your idea to Valve and Riot Games.
>>105845745>noooo the client needs to know about the enemy behind the wall! it just does, alright? we're not just lazy! no I'm not going to elaborate!
>>105845707>It allows to move update function outside of object and updateThis is the only relevant part of ECS that is actually useful in gamedev, everything else is just nonsense that makes development more difficult than it needs to be.
>>105845764>ECS invented function calls/gedg/ is on fire today
>>105845758Okay now how do you stop a DMA aimbot that factors in mistakes mimicking real play? With all your genius wisdom you ought to know how to prevent this because this doesn't require any data other than what's currently visible on the screen since you've already solved the issue of just never rendering anything on the screen that the player can't see. I mean you completely removed footsteps from the game to fix wall hacking but I think players would be happy with your changes!
>>105845723Would probably have to change both gameplay design and implementation to make cheating mathematically impossible. Would limit the kinds of games that one can make, however.
>>105845707nope even before unity.
stop making shit up.
grok keeps telling me to make my game racist
>>105845785and interpolation has to be removed, cant make wrong predictions about where those pesky enemies are
>>105845786>Would limit the kinds of games that one can make, however.Ok you have now made Chess. People are using AI now to predict the best moves to make. What do you do?
>>105845794Grok is an artificial superintelligence now. I'd do what he says.
>>105845794they really should have asked grok to come up with a better name than "grok" before releasing him, but what can you expect from a guy that renamed Twitter to XXX
>>105845751Fair, but, I'd guess that the tick rate is still generally lower for a MUD, and has less state that needs synchronizing, and less expensive computation each step (like physics), and fewer and less complex player actions per tick, correct?
>>105845820>What do you do?Make using AI or algorithms legal, is the best that I can come up with.
>>105845794I would love to make my MMORPG such that human female characters cannot be created. Only female beast races.
I know this isn't possible. It's goes beyond chuddiness. It's incel.
I would love to make the human females have different stats. This is chuddy and could possibly be accepted.
>>105845890I mean, things moved around and had a degree of pathfinding. The term "mob" literally came from "mobile object", the concept of entities that could move between rooms in a MUD. From what I understand combat could become a performance hog when server operators started stacking a lot of scripts. Once you get into procs proccing procs proccing procs territory stuff gets wild.
My MMORPG won't have a tick rate.
>>105845910That's my point. Cheating is *impossible* to prevent in any game unless you control every variable in a real life setting and even that's not technically foolproof. Unfortunate reality.
>>105845723>>105845786>>105845949Being a PBEMChad, cheating is impossible in my game. Unless you're the one in control of the hosting server of course, but clients have no way to cheat at all, no matter what.
>>105845915>procs proccing procs proccing procs>so many buffs with so many effects that even the devs can't predict how they're going to stack and interactcrazy shit back in the day, modern mmos completely sterilized that shit, now you just have like wow where the game only has like 3 buffs and they're just like 5% bonus to <stat> permanently applied to the entire raid
>>105845955You could definitely cheat with AI but I don't think those people are likely to cheat regardless.
>>105845963I liked FFXI's buff system. Standardized, one function per buff, no stacking questions. EQ was a fucking mess, every buff did 15 different things, some components would stack, other components would be overwritten, some things had hard caps, some things had soft caps, no indication for any of this without trying to parse it out.
>>105845970I don't think you could cheat much more with AI than with some decent algorithms and predictions. You're still stuck with the data you are supposed to see (everything else simply isn't sent to you by the server), so while they might be more precise than your estimations, it's very tame in cheating terms compared to a lot of other games.
The biggest issue is the server: whoever has access to it also has access to all the data and can easily see everything, so you need to trust the server host (ideally the server host is not a player in the game or you know he is trustworthy).
>I don't think those people are likely to cheat regardless.Having played a lot of Dominions, which is PBEM, I can tell you these people will do things that would make Machiavelli blush to gain an advantage. Cheating would not even be high up the ladder.
>>105845911humans would only be white, if blacks were ever added it'd be under a different race name and they'd inhabit the savage frontier and only have access to tribal themed classes like shamans and witchdoctors and spearchuckers and in the lore they'd be considered something like orcs and goblins
you play as a hedgehog but not just any hedgehog the fastest hedgehog on tv
/vg/ general are mostly artfags, aren't they?
>>105846275They're modern "game developers" which means they're art-oriented and learn the minimum amount of programming to make their stuff work
>>105845788Show me any ECS article pre 2017 that talks about ECS and cache lines etc.
>>105846286Even rust ECS libraries weren't archetype based until very recently
>>105846286Do you understand that ECS is the cache line oriented design pattern?
>>105846275It's mostly low-tier programmers with no art skill.
the triangle renders again.
>>105846286anon, that was the central focus of Acton's famous 2014 talk
https://www.youtube.com/watch?v=rX0ItVEVjHc
Data oriented programming spawns ECS which is centrally focused around cache.
>>105845717As I said, ECS is just the ability to apply update function to objects with certain components. There is nothing else to it.
dear ecs lovers, answer me this
>just touch memory that is in different pages all the time because the systems need to interact
where is the locality?
>>105846360No that's not what ECS means
ECS is a term that has a clear definition
>>105846362the idea is increasing efficient locality when you can, nobody is claiming you'll ever have 0 misses
My entire game fits into a single cache line so none of this is an issue
>>105845949Depends on definitions, though some types of games may be beyond any reasonable definition of widened rules.
>>105846378i get that, and in theory thats perfect, but if i need to touch multiple different pages for each object, then there must be a point where both are equally performant
>>105845915>From what I understand combat could become a performance hog when server operators started stacking a lot of scripts. Once you get into procs proccing procs proccing procs territory stuff gets wild.So, even with the limits of MUDs, there could at least be issues with performance?
>>105846044The server being compromised is not an issue in the (probably very small) subset of games that have no hidden information, no randomness, and where the rules are sufficiently simple and computationally inexpensive in practice that the legality of each move can reasonably be calculated by each participant.
>>105846421You're probably not going to be running the lowest price point budget plan on a sketchy 1992 server which is actually a Commodore 64 in some dude's basement that you're sharing with 3 other MUDs.
>>1058464121. Actually think about if you need ECS
2. benchmark
3. Your page design might be shit
In reality though, you're just performance masturbating, because it likely won't matter unless you're getting into extreme entity counts.
>>105838198 (OP)How can you stomach doing prototype stuff. I hate to look at my editor and to see abstract shapes.
>MUD discussion
okay, redpill me on Evennia
wait whats that you didnt make the graphics, misic, evety coding shit from scratch?
>>105846474i did my own win32 and xcb loop though
>>105846463so why are these ecs debates always so retarded when it is just "measure and then decide"
>>105846454I think a networking architecture and requirements description of, and comparison between, an archetypical MUD and archetypical 3D MMORPG/GTA5 online, would be interesting.
>>1058464881. performance/optimization addiction is a serious problem for a lot of programmers.
2. a lot of people see shiny new words/trends and implicitly think it's better / worse
3. people fail to actually learn about things
>>105846512its not even an addiction to optimization, its the religious belief in one architectures supremacy over others and the refusal to measure for themself
how did they manage to make a fully 3d game on the nes in the 80s? this should be impossible
>>105846668learn basic math and youll have your answer
>>105841891Oh yeah Anon? You working on a live service game? You sound as ignorant as a Pirate. I ain't going to let your fucking retardation slide.
>>105846275I like them, but a good chunk of them seem to be captured by the youtube slop mill. They talk a lot about marketing, trends and monetization, not even considering that other people might just be working on a game for fun or education.
>>105846668matrices were first invented in 1993
>>105846988I got no idea who that is
>>105847027That is a Belgian man (actually Flemish and therefore Dutch) whose studio is in the process of caving in and learning Godot. Pity him.
Have you guys considered picking a real use case and actually completing the project?
>>105846275With the art that gets posted? Could have fooled me.
>>105846363And what I said is the definion of ECS
ECS originally wasn't even used for gameplay programming, but for engine purposes. Like there is a renderer component, physics component, script component.
Unity architecture is actually closer to classic definition of ECS than modern nu-definition of ECS.
>>105847246Your "actual definition" of ECS is wrong, the "nu definition" is the only definition, standard composition is not called ECS
Modern ECS pushes idea of components too far and adds too many arbitrary restrictions for ideological reasons and that only make game programming harder than it should be.
ecs debaters, please get a hotel room and have a massive gay sex orgy
is "write declarations down and only implement them when you need them" a good programming paradigm
How do you guys do platform/graphcis API abstractions?
>>105847254It's normal ECS like you expect
https://github.com/libgdx/ashley/blob/master/tests/src/com/badlogic/ashley/tests/systems/MovementSystem.java
since it uses OOP it doesn't need to be limited by purity and cache lines autism, though.
https://www.youtube.com/watch?v=jGl_nZ7V0wE
>>105847979You are using the term ECS wrong
Look it up and stop being dumb
>>105847498i dont. you will enjoy my windows desktop exclusivity
just make your own version of SDL/GLFW
making a game engine... in lua
>>105848000You don't know what you're talking about
I showed the code with ENTITIES, COMPONENTS AND SYSTEMS
>>105848756That's not ECS. ECS is a well defined term, just because you have entities and components does not make it ECS. ECS is one particular architecture
>Game I vaguely remember paying for shows up out of nowhere
>Hold on...
>Game I vaguely remember paying for 2
Stop doing this, faggots.
>>105847979yikes, /g/ really strays further from God by the day
>>105848800And definition of ECS is?
>>105848898https://en.wikipedia.org/wiki/Entity_component_system
Specifically read the systems part because that's where it differs from just regular entity and component usage
>>105848927Seems like you cannot tell me the definition of ECS.
>>105848940I could type it out or I could link an article
Although your Java example actually is ECS, I see it does have systems so I was wrong when I said it was not ECS
But ECS was coined wtih the intention of making things go fast by arranging them in memory and calling systems in a particular order, that's the whole point of the paradigm
>>105848977Or you know, you could just concede directly.
>>105848993The guy talking about old/new ECS was absolutely wrong because there's no such thing as old ECS, only new ECS which is all the cache line nonsense and then people cargo culting this in languages like Java where you have no control over memory so the advantage of the pattern is gone
>>105849032Sorry to break it to you, but ECS is what pseuds use to act smart. It doesn't solve performance at all.
>>105849057I agree, I hate ECS, which is why I want people to know exactly what it is and is not
>>105849064And you haven't posted the exact definition so far.
>>105849075its on the wiki
>>105849083Not reading your personal essay, faggot.
>>105846767>Oh yeah Anon? You working on a live service game? You sound as ignorant as a Pirate. I ain't going to let your fucking retardation slide.No, I said live service games are fucking ass. They're dogshit and you should not play them or pay for them. Gaming was objectively BETTER before they existed you zoom zoom. Go suck off the euro government you faggot gacha game player.
>>105849270I'm almost convinced that anyone spamming this crap here is a LLM, they melt down the moment you imply that skg is irrelevant if you have proper taste for games.
c# devs might finally be getting a lower latency garbage collector
https://github.com/dotnet/runtime/discussions/115627#discussioncomment-13162705
Terraria and osu! devs are discussing their results in the thread. I just tried it (Satori GC) on my game and it seems very promising. its hard to trigger a full stop the world gc in normal gameplay now. and when it happens worst i've gotten is 0.37 ms. previously (Workstation Low Latency GC) worst i've gotten it to is 3.5ms. its very new and experimental and ive only played with it for 10 minutes so my measurements could be faulty or there are other tradeoffs im not seeing.
>>105849312you can literally write .net games in a way where there's no garbage to collect during gameplay
>>105849312This is cool, but I don't know why game devs in GC'd languages are so averse to pooling. I almost felt like I was doing the wrong thing when I created my framework around it, but it literally just works.
>gamedev in .NET
Sounds terrible, all the graphics APIs are native so what's even the point?
>b-but I let the framework handle that
Then just use Unity.
>>105849288They just can't comprehend that I don't want to archive every game. No I do not want to save Anthem; nobody *really* wants to save that trash. If they just all stopped giving money to these companies doing all the shit they hate... the companies will STOP doing the thing you all hate. It seems like the term "Vote with your wallet" is just completely lost on these people. They would rather complain about how bad the newest call of duty slop is then they continue to buy the next game in 6 months then complain again, rinse and repeat. This isn't the companies fault, it's the customers fault.
>>105849410Voting is worthless if retards can vote. That doesn't stop me from not voting in my country though. In my country, it is legal to vote even if you dodge draft, and I am in Eastern Europe.
>>105849312>TerrariaHow the fuck does Terraria have performance problems?
>10th highest selling gameWhy should I listen to you on technical matters because "your" game sold a lot? Lethal Company, Undertale, Vampire Survivors etc are all programmed like shit yet sold a tonne.
>>105849475>How the fuck does Terraria have performance problems? This, I literally played that game on a PS Vita and never had any performance issues lol.
>>105849434>Voting is worthless if retards can vote.Then start shaming these retards. If "gamers" are too retarded to stop paying for garbage games then that's their problem. These companies exist to make money not to make good games. If they keep making bad games and people keep buying them then that's the gamers fault. I remember distinctly when Call of Duty MW2 (2009) came out; everyone complained and cried and started a "boycott" due to the lack of dedicated servers. Guess what all those retards in the "boycott" group did? They bought the game anyways. If gamers don't have any amount of self control then they're addicts and I don't care about them. MW2 is a great example because that was truly the beginning of the end.
>>105849475>How the fuck does Terraria have performance problems? By being programmed in C# and needing a gaming rig to render 0.0000000001% of what minecraft does without problems.
>>105849505Broski minecraft is like the worst performing game of all time, it doesn't matter what rig you have it runs like dogshit and always has. Java is literally worse for games than C#.
>>105849517Minecraft is playable on my celeron, terraria is not.
>>105849517>>105849505You retards are busy blaming the language and not the programmers? Really? Are you people rust trannies too?
>>105849524Yeah it's "playable" on a celeron the same way it's playable on a threadripper. Meaning it's still a stuttery mess by most other games' standard. Bedrock runs really well though.
>>105849537It doesn't stutter on either.
>>105849535Sorry jumbo, but nobody who's white can speak fluently in nigerian.
>>105849545Your average Nigerian with 80-90iq would probably still have the basic common sense to not blame the tools but the craftsman, instead. Midwit.
>>105849580I can't blame a craftsman whose tools were broken before he was told to do something with them.
>>105849650Neither C# or Java are broken tools. You're just upset they didn't make their game the way *you* would have. It's a pointless argument unless you're just actively shilling for one tool over another. No different than rust trannys.
Worked on a deferred renderer this weekend. Set the background clear color to blue so you can see the edges of the light volume
>>105839642go try it and figure out. quit being lazy and asking other people to find out for you
>>105849475>How the fuck does Terraria have performance problems?it doesnt
>>105849929technically cornflower blue
brub the ammount of progress media has dropped drastically, what happened?
>>105849970Could somebody translate this to English?
>>105849977Ok here is it in middle english
Marry, good sir, what plague hath befallen yon progress media? The tide of screenshots and engine chronicles on the chan doth ebb most grievously. Where once did flow a torrent of developmental discourse, now but a trickle remains. What dark sorcery hath wrought this barren wasteland of silent craftsmen?
>>105845911>Only female beast racesFurfag
Thoughts on this lighting style?
>>105850028kek
>>105850028Thanks, I understand now.
>>105849970I don't share progress reports I just work on my game. I'll share you my progress when I want to start shilling my game, though.
>>105849970im working on loading media, so unless you want screenshots of my ide
>>105850045looks fine, is that a form of vertex shading or something? I'm considering Gouraud cause it looks so nice but I have to subdivide a lot for lights to behave more consistently which is annoying.
>>105848121SDL was first released in 1998. So it would only take you 27 years to catch up to SDL3. Better get started.
>>105850064Basically the lighting is this: https://files.catbox.moe/lo6oaw.glsl
>>105849312What garbage could terraria possibly need collected?
>>105849505You need to mod minecraft for it to run well and it still runs like shit. It should have been coded in C++ instead of java. Notch is a hack.
is it fine to use assets from other games as placeholders if no one is gonna see those placeholder assets and you're not gonna ship them in the final game
Ok but seriously why shouldn't I use ECS? It just makes more sense imo
>>105850146Yeah but why bother doing that at all. Just use boxes, capsules, etc.
Ok but seriously why should I use ECS? It just makes no sense imo
>>105850267If it doesnt make sense to you then don't use it.
>>105850150If it makes sense to you then use it.
aquaXP
md5: 35bb66a7f539d4a17ede1f4e1f6c2dbc
🔍
>>105848121I did this, unironically. picrel is the main method for this deferred renderer
>>105849732Same code, but in pastebin: https://pastebin.com/3hTLTkuM
There are already some patterns I dislike about it and have started to refactor, but the idea is to make initializing DirectX resources a bit less verbose while also providing low level control over things. ANy object (CBuffer, Texture, Mesh) has getters which will return the original ComPtr for each underlying directx object, so you can drop out of the framework and take control any time you want
>>105850107If only you knew how bad terraria's code really is.
I'm now based and redpilled.
I'll be uaing Beef to create my latest and greatest flappy bird clone.
Thank you for your attention in this matter.
So have any of you here made any games or do you just jerk off over using ecs to render 12 triangles also known as a cube?
>>105850712I make spheres too.
>>105850712I made a crappy shooter in OpenGL for a game jam once
>>105850730>game jamnot only is that impressive, but also sovl, game cannot be bad when there's no time to make it shit
>>105850835here it is https://shortround.itch.io/gain-of-function
Install requires OpenAL to be installed too, it's a stupid process. I barely knew C++ then and I didn't know OpenGL at all. Gamejam lasted 30 days and the goal was to make a game that's < 4mb zipped up
>>105850892Yeah but the winner was someone who made hangman in a windows .bat file. I think some people thought the criteria was "the winner makes the smallest game possible" and not "the winner makes the best game in <4mb"
>>105849270Still just as ignorant before, clearly a PirateSoftware Enjoyer as you can't tell what SKG is for.
>>105849288You are just as retarded as the other anon
>>105851325>clearly you are enjoyer of faggot pirate software because you think SKG is retardedIf anything you're more similar to that faggot than I as you can't make an argument. Pirate Software is a furry erp faggot who has a pooner tranny wife. He probably molests his ferrets too but I'm sure I'm saying all this because I like him. Sure. If that's your argument then keep on sister! I get it you really really don't want to lose your shitty gacha games.
where do you guys get textures? I have a point and shoot camera that I use to take pics of concrete, grass, etc., then I tile them more seamlessly in gimp
>>105851383Its not about gacha games anon...
Its about games they YOU buy and you think they YOU own them but you don't. Games are being sold as licensees in which they can take the software away from YOU at any time.
yeah, but its about the gacha games
YOU are a Pirate Enjoyer because you are just as ignorant as him.
stfu and learn what this shit about
>>105851555>Its about games they YOU buy and you think they YOU own them but you don't. Games are being sold as licensees in which they can take the software away from YOU at any time.Yeah and my argument is. Don't buy those games. Simple as. Don't like their business model then STOP buying them you stupid tranny. I advocate for video game PIRACY and to STOP BUYING GAMES.
>stfu and learn what this shit aboutI know what it's about and I don't care. I don't care if Helldivers 2 and The Crew shut down forever and you can't play it anymore after you spent hundreds of dollars on their shit ass game. You should have never bought their crap. This is a consumer problem created by consumers. I recommend consumers fix their own problem and not ask daddy government to fix it for them. This is video games, you don't need them nor do you need to buy them. The only thing that these SKG people have said that I agree with is that they should clearly label their products better to show that it is a live service game so you know NOT to buy them. Just stop buying them. Simple. Problem fixed.
Keep the stupid /v/ arguments to /v/
>>105851658It directly involves game developers so no. I won't stop bashing this ESL retards head in with my words.
>>105851639Your solution is a pipe dream. Yeah theoretically that would work, but its not realistic, at all.
If you have a better idea than the SKG and one that's actually possible and grounded in reality, maybe you should pipe up.
>>105851676>It directly involves game developersno it doesnt
>>105851689>labelling games isn't realistic>but forcing them to release server software isAre you retarded?
>>105851726>what is a playable stateAre you retarded???
>>105850853There is no oalinstall in the downloaded zip.
Also how many levels are there? I got to level 3 so far.
>>105851639consumer protection laws exist
new ones are constantly being added
if you don't agree with the law you can just stop making video games ;^)
>>105851768can you repost this in English?
>>105851788Sure thing buddy.
If I buy a game, I now own a copy in which I can play at any time, all the time.
Anything else still confusing you burger?
>>105851844If you want to rage against the machine go do it on /v/
>>105851848okay, go for it, I ain't stopping ya.
>>105851706Yes it does. They're trying to enact laws to change how developers structure always online multiplayer games.
>>105851768Playable state. That's the issue. I don't care nor should they care if you want their dead game to be playable in a hundred years. If the companies don't want you to play Anthem after it shuts down then that's their business. If you don't like it then don't support them and don't buy it.
>>105851787>if you don't agree with the law you can just stop making video games ;^)Laws for the EU. We can just block the EU from playing and buying our shitty games. Simple as. I live in a free country thank you very much.
>>105851844>If I buy a game, I now own a copy in which I can play at any time, all the time. There are still hundreds of thousands of games you can still buy and support that let you do this. Let's look at GOG. You should be buying those games instead of the anti-consumer slop that you desperately want to buy. Vote with your wallet.
>>105851884>They're trying to enact laws to change how developers structure always online multiplayer games.They're trying to but they aren't going to, so just let them seethe about it somewhere else
>>105851884Anon, the US has consumer protection laws too. In fact, every state is free to enact their own consumer protection laws. So at any point in time your entire world view could crumble because some state congressman decided to rise up and claim the gamer vote.
I'm sorry this is happening to you.
>>105851903>I'm sorry this is happening to you.It's not happening to me and it's not happening in the US. There's a reason why they're trying to push this change to the EU and not in any real country.
>>105851884People will vote with their wallet when they realize that the live service game is not something you own. The biggest issue revolves around the wording of the EULA. If you want to be able to revoke the game at anytime, then the wording HAS to be changed so that the consumer understands they are buying a license to the game and not a copy of the game.
>>105851959>then the wording HAS to be changed so that the consumer understands they are buying a license to the game and not a copy of the game.The EULA already says that though
You're too fucking stupid to talk about this
>>105851918>laws change>it's just a matter of time>there is absolutely nothing you can do about it besides comply or give up;^)
>>105851959I agree with this but that's not what SKG wants to do. If that's the entire end result I would be more than happy with it. Sure put a big banner up that says "You do not own this game you are buying access to it" then fine. I advocate to not buy those games.
>>105851970>comply or give up to the socialist countriesYeah, no. The biggest money makers of live service games aren't even in the EU. They're all American and Asian.
>>105851967Huh would you look at that, the EULA does say that.
Hmmm, my retort: fuck ubisoft
>>105852009You probably should have known that before developing an opinion on the subject
>>105852018>save some smug for the rest of us Richard.
>>105852046Sorry I've been in the /v/ threads and it's just an endless stream of completely ignorant people whos opinions can all be debunked with simple facts
>>105852061Braver than most for going into the trenches like that o7
>>105851959>People will vote with their wallet Just not true, people buy whatever slop they can get, doesn't mean I won't weaponize whatever I can to move it in a direction I want to in the same way companies do in their own favor. If it weren't for the EU, apple would still be using their shit proprietary cables, you can't "vote with your wallet" out of that one, and it's a noticeable quality of life increase. These gen x lolberts are something else man.
>>105852008>Sure put a big banner up that says "You do not own this game you are buying access to it" then fineWhy doesn't steam just do that if it's such a big deal? We don't need the government to get involved because consoomers are too stupid to understand that online-only games don't last forever
>>105852128if you don't like democracy get the fuck out of the first world
>>105852133I mean they essentially do, whenever you see these things as shown in the image on a game you should NOT buy it. If they want daddy government to convert this to retard terms by simplifying the EULA then fine I don't really care as it won't change anything. These retards will still buy this slop regardless.
>>105852144What if we vote for gommunism and you can't do anything about it?
>>105852177>If they want daddy government to convert this to retard terms by simplifying the EULA then fine I don't really care as it won't change anythingYeah I would be okay with some sort of layman's terms section of the EULA being mandated, that's about as far as I would go with the regulations personally
>>105852217EULAs arent hard to understand
>>105852233They are pretty verbose
>>105852233You need to be more inclusive.
>>105851555Last time I bought a game, it was a DRM-free CD-ROM that is only needed during installation. That's right, after I install the game, I can snap the disk in half, because I own it.
Nowadays I would never pay, because I only get a gay and soulless software copy, same copy that some russian could've sent to me over bittorrent, CD never existed.
>>105851768Explain how can you unironically claim that the game is in playable state when it was fun only when it had millions of players on official servers.
I bet you never played cs 1.6. I can guarantee the game won't be playable to you, because the autist who has been playing for past 20 years will be there every evening to destroy you with perfect spread pattern tracking over your torso while you miss 100% of shots because you didn't even know that the game has spread.
>>105852260>your conduct offline
>>105852562Bad example, I log in to CS 1.6, Source, and Battlefield 2 every few years for a couple of days and it's always a lot of fun.
Wtf is Zig and why do I see it popping up recently? Is this the new Rust?
Stupid question: How do I make a texture emit light?
>>105853084You make the texture unlit and just place a light on it
>>105850853Cool game, anon. I got stuck on [spoiler]the ghost[/spoiler] a few levels in and sort of gave up, but i had fun playing it
>I barely knew C++ then and I didn't know OpenGL at all.Unironically inspirational. Shows that 3D programming isn't this out-of-reach thing i thought it was. "1000 lines to draw a triangle" memes fooled me into thinking it was gonna take years before i'd learn enough to make a minimally functional game. What resources did you use to study, if i may ask?