ByteCode.News
Submit RSS Atom Sign in

Back to the channels

#java

  1. NeXeN hrmmjava
  2. pengu1nx I never really did any big project, specifically not a game. Assuming I want to do a sandbox type game, what kind of software architecture would be suitable? I just don't want to mess up and make expanding difficult later
  3. kcomhnall mvc
  4. dreamreal oi
  5. Para pengu1nx: The actual answer is probably https://en.wikipedia.org/wiki/Entity_component_system
  6. nevet Entity component system - Wikipedia
  7. Para see also https://github.com/SanderMertens/ecs-faq
  8. javabot Para's title: "GitHub - SanderMertens/ecs-faq: Frequently asked questions about Entity Component Systems · GitHub"
  9. kcomhnall ohhhh, well my bad. I don't know anything about game dev other than it's really hard
  10. dreamreal I don't know if it's hard
  11. kcomhnall hm horizontal composition... interesting. I'll keep that in mind but will continue my versical layers for the top-down data flow
  12. dreamreal it depends on the game
  13. kcomhnall dreamreal: of course you wouldn't. I had a brief brush against it and was relieved when that mess was over. shaders, path tracing, texture mapping oh my.
  14. dreamreal Sure. But that's a particular definition of "game." Nethack has no shaders, no texture mapping. Path tracing is very simple on a cartesian plane... and can be played on anything with enough storage for the game to run. Is it not a game?
  15. dreamreal Rogue could be played on a commodore 64, a tandy color computer. Is it not a game?
  16. dreamreal Lode Runner has no shaders, not even path tracing. Again, 8-bit. Game?
  17. * kcomhnall reminds dreamreal they're talking to a newb
  18. dreamreal Well, stop being a newb. Games don't have to look like one thing only.
  19. pengu1nx Thanks, I'll check them all out later and decide on one
  20. dreamreal Hell, minecraft is incredibly successful, and notch had no idea what he was doing: again, barely better than cartesian path tracing.
  21. dreamreal Shaders there were *imported* from opengl because he could render the world as cubes. (Hytale, btw, is kinda cool as a sort of 'minecraft done by people who were inspired but have a clue what they're doing.)
  22. dreamreal DIABLO is not especially far removed from nethack in terms of gameplay. The looks of a game are not the game, although the industry seems to think it does: if Tomb Raider had a negative aspect, it's that Croft's chest size accident influenced people into thinking *that* is what mattered.
  23. dreamreal (a programmer accidentally fat-fingered a number and she went from a B to, uh, whatever she is.)
  24. kcomhnall okay, I've heard of Tomb Raider and Minecraft.
  25. * kcomhnall summons ender_dragon
  26. dreamreal the dawncraft mod for minecraft is, BTW, utterly bonkers mad. So are a lot of the "hard mods." Thankfully, there're other mods to help keep up. (My son has a pretty popular gun mod, it's fascinating to see how minecraft works now.)
  27. Para The story how Diablo became a realtime game was kinda funny. It was originally turn based with set time increments (similar to how D&D turn is 6 seconds game time), and within the team some were pondering out loud if it could be done. The lead was adamantly against it but that didn't kill the discussion, so eventually one weekend at home he made one turn last like 50 milliseconds and turned on
  28. Para automatic turns and...the game became realtime, and that was it.
  29. dreamreal Para: haha, yeah
  30. dreamreal was supposed to be nethack with expiring turns, and turned into... diablo
  31. Para Which of course bears the question that how did they manage to create an essentially realtime game but turn based :D
  32. dreamreal more like they took a turn-based game and gave the player only so long to move
  33. dreamreal diablo feels very like an isometric nethack to me
  34. Para Reminds me of how John McCarthy apparently laughed at one of his grad students when one of them showed them this magical "eval" function for executing his LISP S-expressions. As in "that's cute but no one's going to need that!"
  35. dreamreal heh
  36. dreamreal Para: did you notice I put clojure into nevet? :D
  37. Para Diablo 2 apparently has an unfinished 3D mode in the game engine. It's got at least some screen distortion things going on.
  38. Para dreamreal: nevet doesn't come with a manual
  39. dreamreal It actually does!
  40. dreamreal but there's a "be [name]" operation in there that uses clojure
  41. dreamreal https://github.com/jottinger/bytecode.news/blob/main/operation-markov/src/main/clojure/com/enigmastation/streampack/markov/chain.clj
  42. javabot dreamreal's title: "bytecode.news/operation-markov/src/main/clojure/com/enigmastation/streampack/markov/chain.clj at main · jottinger/bytecode.news · GitHub"
  43. dreamreal https://github.com/jottinger/bytecode.news/blob/main/operation-markov/src/main/kotlin/com/enigmastation/streampack/markov/operation/BeOperation.kt
  44. Para Ah, that's how it works.
  45. Para Now all nevet needs is a cure for ephemeral dementia.
  46. * dreamreal adds a factoid saying "stop being you, $1"
  47. dreamreal You can still add specific "be person" factoids - the priority system means that it'll try to match other things first. But it will emulate anyone it's seen... usually with, uh, "odd results."
  48. dreamreal * channeling dreamreal: you can't run the official mongo images on some of the similar actions are tied to the "i hope they don't die" statement
  49. dreamreal That's.... remarkably lucid, actually
  50. Para * channeling dreamreal: thought they were clearly deficient human beings
  51. Chronos dreamreal: If your son is into Minecraft and modding, you might want to introduce him to Luanti (formerly Minetest). He could dive into the world of Luanti mods, all written in Lua, and customize them. Maybe even create his own mods.
  52. dreamreal Yep, it goes back and builds a series of token streams for 1000 messages, and since it's in a lot of channels where I am, it's got a good corpus for me
  53. dreamreal Chronos: he actually doesn't like programming. Lua would drive him nuts.
  54. Para Create is a pretty awesome Minecraft mod.
  55. Para It's even got trains.
  56. Chronos dreamreal: Ah, ok.
  57. dreamreal Yeah, he's helped with some of those - he has trains, ships, planes himself, and has a pretty realistic set of guns
  58. dreamreal apparently his gun mod is one of the good ones
  59. Para There was also some really in-depth and detailed cooking mod which looks interesting to me.
  60. Para I think there's even a specific submod just for creating custom sandwiches.
  61. dreamreal yeah, there's some crazy stuff in there
  62. dreamreal There's even a mod that converts villagers to orthodox jews: my son and I HAD to try that one. Removed, because it's very accurate and MY GOD the orthodox are annoying :D
  63. Para "this sucks 5/5"
  64. dreamreal poe's law was very strong in that one: you're going "... is the author trying to make them look bad, or ... is that just how the orthodox are?" (and in my experience, it's pretty much how the orthodox are: I never come away with a lot of interaction with the orthodox without going "well, glad THAT's over" and thinking to myself "shut up, I'm just as Jewish as you are")
  65. Para Of course knowing what the modding was like a decade ago it's great that the high quality and variety mods are what people know and want to use these days.
  66. Para Gone are days of "I imported this free Porche OBJ and replaced the horse with it" kind of mods. Or girlfriend villager mods.
  67. dreamreal Hytale is *amazing* though
  68. Para (I'm sure there's still some terrible actively developed girlfriend mods out there)
  69. * dreamreal shudders. GIRLFRIEND villager mods?
  70. Para Why of course, with true Tomb Raider 1 style pointy tits and all.
  71. * dreamreal fears and shifts safari to private mode.
  72. Para There was actually a fight at one point if that's fine or if they should be blocks because, you know, Minecraft.
  73. dreamreal OM this is so much better than I feared
  74. Para Well, ten years ago they weren't.
  75. dreamreal I mean, it's also pretty much exactly what I feared, in that you kinda wonder if the authors actually know what females look like, but it'd better than skyrim's modding community, where women would be unable to stand upright based on any sort of real physics
  76. kcomhnall not that I have a solution for this but, why is the first paragraph of this guide ( https://docs.oracle.com/en/java/javase/21/security/java-cryptography-architecture-jca-reference-guide.html#GUID-2BCFDD85-D533-4E6C-8CE9-29990DEB0190 ) also repeated in the "Introduction to Java Cryptography Architecture" section? Is this just how we are expected to write documentation?
  77. nevet Security Developer’s Guide
  78. kcomhnall like, I'm getting what I need to know from the doc but that really sticks out and I was a bit annoyed.
  79. dreamreal kcomhnall: this may surprise you but humans write docs
  80. dreamreal and this may ALSO surprise you but humans are not perfect, nor is everything tuned for you
  81. dreamreal as far as "why" - you'd need to ask the author, depending on who it is, and good luck finding that out. Chances are the actual writer had no idea and was handed a lot of absolute rubbish from someone who had insight but didn't know how to present it.
  82. kcomhnall dreamreal: no surprises. I actually think I've used that same writing style in an article I published.
  83. Para Probably idea was "this needs a summary/excerpt", then that paragraph looked great as is, copied it there and made a mental note of fixing it later, and then lost the note.
  84. dreamreal Technical writing is a specific skill... and one that's really poorly done. I saw an axis about documentation that I thought was really useful, I need to remember how to describe it...
  85. dreamreal like, there're quadrants: users vs authors, and those who want to know vs those who need to get stuff done
  86. dreamreal and docs really should be written from that perspective: "this is an article written for those who want to use this, not understand it" or "this is an article written for those who need to implement..."
  87. dreamreal diataxis!
  88. dreamreal diataxis=<reply>Diataxis is a way of thinking about and doing documentation. It's a quadrant of tutorials/explanation, how-to vs reference. What to write, how, and how to organize it. Should guide all documentation. Doesn't.
  89. nevet ok, dreamreal: updated diataxis.
  90. dreamreal diataxis.tag=documentation
  91. nevet ok, dreamreal: updated diataxis.
  92. dreamreal diataxis.url=https://diataxis.fr/
  93. nevet ok, dreamreal: updated diataxis.
  94. dreamreal there!
  95. kcomhnall ~diataxis
  96. javabot kcomhnall, what does that even *mean*?
  97. kcomhnall oh...thought dreamreal added a factoid
  98. dreamreal I did, just not in javabot
  99. dreamreal nevet has it. javabot and nevet reproduce factoids differently.
  100. dreamreal /m nevet diataxis
  101. dreamreal And bytecode.news just got an article on diataxis out of it... drafted on IRC. :D
  102. dreamreal like, LITERALLY on irc: "!article Diataxis" followed by "!content foo bar baz" to add context, then "!done" to submit it :D
  103. dreamreal I would have done it here but nevet's muted in #java
  104. dreamreal I'm ridiculously happy about that working. That's a proof of concept I've been mulling for quite literally decades.
  105. dreamreal kcomhnall: ++
  106. nevet kcomhnall now has karma of 1.
  107. kcomhnall dreamreal: thanks...what'd I do though?
  108. * kcomhnall battery low - checking out!