Seedborn(beta) is launched!

Heyas, thanks for taking the time to read. I hope it helped.

My comment is made in the context of 3d AAA web games specifically with webgl2. I set out to investigate if 3d AAA quality web games were viable a long time ago. How stuff looks nice in tech demos but falter when everything comes together. Seedborn(SB) is where I try to bring everything together. A text elaboration would be very long and not very informative. I think a breakdown ss would be do better from all points.


Fig. 1: Dev stress test scene with simple explanations

Figure 1 shows my goto stress test scene. The 2 pics are of the same scene and while it looks packed, there’s still a lot of undeveloped space. Also, there is a simple post process for color grading. In short, anything that can be instanced/thin instanced are already done. If it needs animations, it will be driven by a VAT. The only exception are the 20 animated characters (due to animation blending), one-off buildings (manor, inventory), terrain, env, water etc. Debug stats are as shown in my previous post.

As you can see, we are still a ways off making anything of AAA quality. I believe primary bottlenecks are largely due to updates of the transformation matrices for skeletons every frame. Even with VATs, the sheer number (40+) still constitute a hurdle. Now compare this with Age of Empire series (https://www.youtube.com/watch?v=Xn-biVidA4w) or the Civ series (https://www.youtube.com/watch?v=VF8Ribe5AFU) both of which contain far more assets. In their heyday, these titles used 2d sprites(!) and that was good enuff. Everytime I want to add a feature now, I have to ask myself how much resources it will consume. As a game dev, you don’t want to deal with device limits. However, as a 3d web game dev, YOU have to deal with web+device limits. Imo, that limits creativity…

2 Likes

@phaselock
I get blank screen after I start the game :frowning:

Absolutely! I appreciate your examples and the visual reference!

One thing that would provide even more context is your target device specs for your stress test. I expect there’s correlation to your target device and the kind of devices that should be able to play AAA web games? But I understand you’re saying the web platform overall needs more power from all sides to reach AAA viability. Device limits and the high variance of devices are without question a headache but also a fair trade-off for the platform agnostic nature of the web. It’s kind of our responsibility to sustain that, it’s just a shame the market isn’t as hot as it was in the Flash days. Speaking of which, one thing I wish were a bigger narrative is the fact that in the last 5 or so years HTML5 has finally met and even surpassed what prime Flash can do. That’s something I’ve been happy about lately! That’s here nor there, we’re in agreement about the platform not being viable for AAA!

What I’m about to say could just be my bias since I’m the opposite here, limitations boost my creativity. But I disagree that the platform isn’t viable for AA (you didn’t directly say that, you said something synonymous). The industry has this habit of defining AAA/AA by some undefined yet arbitrary amount of budget, team size, graphics, etc. That’s fair, but I don’t think this should apply to AA. The common denominator between AA games is they’re professional in quality, fun, have reasonable polish, and are designed for high retention. Many devs have achieved this regardless of end user device, budget, etc which is why I feel the definition should be more broad (not that I want to debate it). With that definition in mind, I think the HTML5 platform is more than capable of producing AA games.

Personally I’m approaching this platform with the mindset that I’m developing for the PS1/PS2/GBA/DS. Yes, we have some obnoxious limitations (users needing to input before we can fullscreen/play sound as examples) but even these things can be gamified. I’m honestly excited about the current state of web games, I feel there’s an undiscovered void somewhere that needs to filled. I just need to stay intune with what players want, what I want, and how I can deliver. BabylonJS in particular has been great in helping me search for that sweet spot.

4 Likes

I like the constraints too. It’s frustrating, but I’m used to dealing with a wide range of hardware and browsers. Using Babylon.js for games also means I can leverage the same web tech stack and dev tools I use professionally for personal passion projects like games etc. I don’t need to be constantly switching from Node/TS/Babylon to Unity/C# or Unreal/C++, with all the inefficiencies and extra learning that entails. I’m getting too old for that shite :wink:

Another thing worth mentioning that I’m seeing a lot of commentary online about lately, is that some are saying engines like Unreal and Unity are ruining gaming. I’m sure that’s NOT the case - they’re just tools like any other after all. However they have lowered the bar of entry and they actively promote photorealistic real-time graphics. Most new game dev aspirants don’t realise they can’t simply use a bunch of asset packs or drop in a bunch of Megascans and hope to create a performant, unique, playable and fun game that is release ready. A beautiful 3D tech demo created in an afternoon that only runs on an RTX 5090 does not make a viable game. Even a lot of AAA game studios these days don’t pay enough attention to optimisation, meaning only the 10% of players with the latest gaming PC can hope to play the game at the highest resolution and settings, with everyone else relegated to PS1/Roblox graphics if they want playable frame rates. Targeting lower spec devices and web tech forces one to think more carefully about every decision … and I like that :slight_smile:

Having said that, Babylon.js is more than capable of producing those beautiful, photorealistic 3D tech demos … and even photorealistic games, but like everything there’s a trade-off.

3 Likes

What browser are you using? Any console errors? Kindly note that it does not support safari or mobile. Lemme know, thanks!

Oh, yes…I missed that, thanks. Firefox on win 10 is my current baseline. Chrome and ffox are supported browsers simply because they managed to keep up with web standards.

iirc, Flash games thrived as the mobile game market wasn’t as big then. I might be wrong. In any case, 2d games thrive anywhere regardless of platform. Fun has nothing to do with 2d/3d.

Sorry, I copy-pasted. :wink: Deleted an ‘A’ while backspacing, that’s fixed, lol.

Completely agree, its not a bias. Fun has nothing to do with 2d or 3d. My first foray into game dev was on a MUD. There are plenty of ways to work within limits. But from BJS point of view, my biggest question is: why 3d? Think about it, I could have built Seedborn using fully 2d assets, right? Like what Age of Empires did. But that’s not the quality I want. So if a studio wants to make a 2d game for the mobile market, they wouldn’t face much problems. But if a studio wants to make the same 2d game into 3d for the same market, they’d have to address the limits first.

For context, I’m defining AAA as a quality standard in my comment (maybe I should have started with this, lol). eg: Hand painted fake shadows are somewhere A to AA quality. Real-time shadows would be baseline AA and upwards etc. A material with a single handpainted diffuse tex is A to AA quality. A pbr with the full set of hi-res tex would be somewhat AAA. Ditto for lighting/fx/animation…you get the drift.

Yes, its a great webgl wrapper! I find that it immensely cuts down time from paper concepting to feasibility prototype testing before you start committing.

To summarize, there has been no game that has fully pushed the bounds of webgl in as many aspects as possible, Seedborn is the test bed, a rough guide that tries to do so. I’m happy it works, but a little chaffed at the walls I’ve reached. Future devs can and should use the lessons/comments here for their design and adjust accordingly. Also, keep in the mind that the bjs devs are actively improving the engine, so this post might be outdated in a few yrs. I hope all the posts here helped to give insights.

2 Likes

Nope and that’s weird. Not even a single entry in the network tab.

@phaselock I have the same issue as @roland in Windows Chrome 131.0.6778.265 (Official Build) (64-bit)

I tried a few times and once I received a “window unresponsive” popup. It stays as page loading with nothing coming up in Dev Tools > Network tab.

1 Like

Working fine for me in latest Firefox.

1 Like

@roland I have to confirm, are you on a linux distro? I’ve not done any testing on those platforms, not sure if it rejects the client-side connection. At which point, I’d have to code a workaround. Lemme know, thks!

@inteja Just tested on Chrome latest and it works. Next time, either
a) flush the cache
b) open network tab before you get to the play screen. drop me a pm with a screenshot or log. Its on a cheap hosting so I’d just blame the cdn mostly… :stuck_out_tongue:

Ok this explains everything. Crazy how much context a single letter carries.

That’s a good point, it was a completely different market back then. Guess the death of web game popularity was inevitable. The other component of this in which I miss from those days was the internet culture itself.

I agree and congrats on what you’ve done with the game!

Sound advice! I genuinely have already pivoted some components of my designs based on information from your findings. I have several gamedev profiles (yours included) in this forum bookmarked because their topics are literal treasure troves of information. I myself have been on this forum for a year or 2. So 99% of the time I’m just reading but I am trying to be more active.

1 Like

I am on MacOS.

Executed online testing for
a) chrome 132 and safari 15 on monterey - slow on safari and avifs don’t show but its working
b) chrome 132 on sequoia - some wonky css, but its working

At this point, you can either

  1. PM me your macOS release/browser extensions/settings to repro your issue.
  2. I suspect the CDN is slow to respond for your region. At which point you could try the guest login, hit F5 if the game doesn’t load/network tab not running.
  3. Use a different browser altogether just to confirm its not system specific.

Sorry for the inconvenience, lemme know what works for you, thanks!

1 Like

I don’t think its dead, several sites that I know of migrated their tech stack from flash and still run. They went from PC only to PC+mobile versions. But some games just cannot switch to mobile due to screen real-estate or connectivity issues etc, eg: sports, pvp fighting games etc. I’ve seen children trying to play soccer on their phones! Opticians are happy these days.

Test whatever you are reading, bjs playground is really easy to jump into! I can’t emphasize this enough for newcomers cos the learning curve isn’t sharp and the docs can’t cover everything. Plus the devs are responsive, the community isn’t toxic, veterans are helpful, all sorts of demos are available. Imo, now is the best time to learn the engine hands-on and you only need javascript! (until you need to write shaders, which is a different beast altogether) :slight_smile:

Hope this helps, cheers!

1 Like

The game was loaded very quickly. Sorry, I don’t have time to investigate further on Chrome, I have to play the game right now :smiley: :smiley: :smiley: :smiley:

I’ll update this post after I finish playing the game :wink:

EDIT:

This one is causing the issue in Chrome:

If I disable this extension the game starts to load, the BG sounds starts to play:

However I get this error in the console:

2 Likes

Why can’t I build here? I’ve moved the Hut from there to a new position.

1 Like

ok, got it. It seems like the extension is indeed blocking requests.

Warning is fine, no impact on anything.

You can’t mix terrains when you build the field. It needs 4 tiles of the same terrain due to terrain bonuses. Its either 4xplains or 4xgrassland.

2 Likes

Similar with me. I didn’t have React Dev Tools installed, but a bunch of others, so as soon as I went into a Chrome incognito window without extensions, it loaded just fine.

3 Likes

Notable Updates (Jan 2025)

Some balancing and qol fixes for this month.

Balancing

  • Increase base movespeed for stamina and intel farmhands by 20%. This was long overdue. :stuck_out_tongue:

Quality of Life fixes

  • Responsive image loading site-wide.
  • You should no longer need to scroll to play the jigsaw mini-game in the relic.
  • Added a little glow to mountain gold mini-game for easier spotting.

Call for aid

  • Reduced entry fee for ‘First blood at Berrymore’ from 50 to 40 gold.
  • Added shield passive ability for creeps.

:partying_face: HAPPY CHINESE NEW YEAR !!!

7 Likes

I really like your artistic direction!

1 Like