• Content Count

  • Joined

  • Last visited

Posts posted by Jammy

  1. 3 hours ago, themoonrat said:

    So just tried on my tablet, and I'm able to select built items fine. Odd (but good!). 

    Couple more issues... 

    1. All the menus look fine in portrait apart from the upgrades menu, which doesn't show the X in portrait mode, so can't click off of it.

    2. If I use the pinch action to zoom in as much as I can, I can then press the zoom icon to zoom further into a black void. Scary.



    Ah thanks mate, really appreciate those spots! Added to the list.

    I think also the oddness might be explained by the control scheme I've setup but not explained for tablet/phone. I've got a button that makes it a bit easier to use the tools. I've put this together for everyone who' s testing but I'll have to get something in game soon.



  2. 5 minutes ago, 128p said:

    (I'm using Pixi for my current game btw)

    Understood mate, I also use *just* pixi for my project (I didn't see the point in going any further than having a rendering engine). I do hope others can provide you with experienced answers but I figure I would also provide more from my perspective.

    Making a game or any project from scratch without frameworks can come with loads of benefits (since we already know the downsides i'll describe just a few of the upsides)

    1. Performance.. You pick exactly how your engine processes its logic. (This is why I only use a rendering engine and not a game framework)

    2. Learning... You get to learn loads about making a framework or engine yourself (Before Pixi 1.0 and even the early days of popularised HTML5 games, I did a bunch of learning and made this video at end of the post)


    3. Cost... Maybe the framework that does suit you costs too much, e.g. dev tooling, licenses etc.

    4. Fit for purpose... Sometimes you have an idea for a project, which no framework lends itself to well. For example, you may need to run inside Linux, Unix, iOS, Android, PS4 web browser, XBOX web browser. You may want Newtonian physics, you may want it to import SVG's, you may want it to use CSS etc.

    5. Complete control... This one is normally the reason used by the best developers, AAA's/AA's, financial institutes, military, etc. You have created and built every single aspect and component of your project, because it's extremely important you know exactly what every single component does.

    The video I put together years ago about trying out gaming aspects in HTML5

    Hope this helps give you some perspective you may have not considered.


  3. On 10/14/2019 at 6:20 AM, KayacChang said:
    5. Keyboard Control.

    Great little demo! I would suggest definitely making the keyboard changes as suggested by Ivan, it's a bit iffy for me. Windows 10/Chrome.

    I even tried to bug it out by messing around with pushing tanks into objects and everything seemed pretty solid! No issues there.

  4. 3 hours ago, themoonrat said:

    That sorts out the scaling issues on my phone, and it nicely works either portrait or landscape... nice work!

    There's now the issue on the phone that you can't select certain things, like existing machines, or build items (tho you can open a build menu fine)

    The first issue is interesting, as to move the game around you have to touch the screen, so maybe it's best an existing machine info doesn't keep popping up all of the time! Maybe a question mark icon you can press which then let's you select anything on screen to view it's info? Dunno. UI's do have to be different from mobile to desktop, so it depends how far you want to take this being a good mobile/tablet experience

    Thanks buddy really appreciate the feedback!

    I do want this to be released for phone and tablet. So now that I can at least see it being playable on most devices, I'm going to spend a week or so really trying to nail down the UI and user-interaction aspects.

    My job is up in December so if i can see this version working well (being enjoyed), I might just focus on a more commercial different (or same) game in the same engine I've made.

    Really appreciate all your guys time spent with me on this.

  5. 10 hours ago, 128p said:

    (1)Without game and/or rendering frameworks like Phaser and Pixi. Note that I do not mention physics engines.

    I don't think many people seriously build commercial games projects from the ground up with their own rendering engine. It would take just as long making the rendering engine as it would to make the game?

    Since your question is around commercial titles, I've never worked for anybody who said "let's do everything the hard way from scratch." it's more like "let's leverage what we can and not re-invent the wheel".

    Personally I've never made much money from a HTML5 game, but have made money from other games written from scratch (e.g. www.world-mafia.com

    ), but we're not talking huge successes.

  6. On 10/15/2019 at 4:35 PM, Marwan38 said:

    Samsung s7 (android) here. Couldnt do much as the scale of the game was too big for the screen.


    Thanks a lot for pointing this out. I've got a new build now which has started to resolve the issue for some android users, it would be great if you could try again and let me know if issue still occurs. (I do think though i have a bit of scaling work to do, but the game should now be playable)



  7. On 10/12/2019 at 6:17 PM, themoonrat said:
    1. You say it's got tablet controls... but loading on a phone it's zoomed in to a tiny area with no way to pinch to zoom out or anything

    Hope you're well mate. I've got a new build today that addresses a lot of the mobile issues but still with a lack of all the devices around me to test on would be great to see what happens on everyone elses device.

    Would you mind sparing a moment again to try on this link: https://ajamdonut.github.io/ABV2/allbuilds/v.2.2.5f/

    A lot of the other issues (audio etc) have also been fixed but i'm still sure I've got a bit to go before it's rock solid.

  8. On 10/12/2019 at 12:32 PM, eXponeta said:

    Open on screen with scale 1.5 and move to screen with scale 1.


    On 10/12/2019 at 6:17 PM, themoonrat said:

    Hey again Jammy! I remember last time ...

    Hey guys, really really appreciate these write-ups. So far i've addressed a few of the issues but I wan't to nail everything you've mentioned before posting latest.

    Really appreciate it! I think the Tablet stuff should be a lot more solid next time (I've added a bunch of logic to check the device type)

    Also thanks for pointing me at Howler, audio is next to be rewritten and this will probably fix a lot of my issues.

  9. Hi guys,

    Hope you're all well.

    I posted my last game here a year or so back Arcade Builder - I've been working on the engine on and off ever since and I'm really trying to nail every bug.

    I feel closer now to a solid game now but I don't have many friends and family with iPads/Androids/Macs to test on so some feedback on those devices would also be greatly appreciated!

    Could you please help me and check it out and cause any issues you can?

    If you're feeling daring try the "Hell pit" level and tell me how badly or how well it runs.


    The major changes since the last version are:

    Changed tile system to pixi-tilemap

    Changed viewport to pixi-viewport

    Added tablet controls

    Added fixes for Safari

    Re-coded AI

    Added browser compatibility checks



    All feedback and suggestions really appreciated. Even if its bad news :)

    Thanks, Jammy.

  10. 10 minutes ago, soylomass said:

    The sky is made from a 1px width gradient, pixi works fine with that. But the gradients are made in real time as the users can change the colors of the skies, so everything has to be dynamic. 

    I guess the only other way I can think... If the gradient was put onto offscreen canvas and you had an algorithm go along each edge removing pixel in a dither pattern with transparent pixel to create the dither.... Again though.. not sure on impact to performance.

  11. 11 minutes ago, soylomass said:

    The problem is that the skies are gradients, not solid colors, so the borders should not only be a gradient from top color to bottom color, but have an horizontal alpha gradient from 1 to 0.

    Yea I see the issue...

    You could do it like a 9-grid (i.e. 3-grid), e.g. the sky is a 1px width gradient rendered from a photoshop png the height of the sky (stretched to the desired width), and on each end of the sky you attach your gradient-ed dither from photoshop or such.

    That way you could even do away with the pixel dither all together and just have joining skys with whatever gradient u want... but ofcourse im not sure on the impact of a stretched 1px texture, not tried it in pixi.

  12. 1 hour ago, soylomass said:

    I feel writing shaders is far away from my possibilities, at least for now😂 Will investigate anyway. Thanks!

    Feel you there bro I wouldn't touch shaders. I thought about this one a lot and what about maybe... A pixel art dither as a texture, repeated to the height of the screen, dithering from one color to transparency.

    You could maybe even build the dither on an off screen canvas.

  13. 3 hours ago, bruno_ said:

    I don't know any link that explains this directly.

    But web workers are not part of javascript.

    Actually that really helped, I had completely ignored that fact... This is definitely a "per-browser" thing and already I've dug up some content from Chromium. Thanks for the help! :)



  14. 1 hour ago, bruno_ said:

    Its really hard to answer to that.

    All devices and browsers may have different behavior in performance.

    I think you should use the minimum resources you need. A web worker not always generate a new thread, its asynchronous execution, but multiple workers may be running on the same thread.

    Try first to make your game without any web workers and test it on the devices.

    If the game is too slow, and when optimizing the code is no longer an option, create your first web worker.

    After that, test again, if one is enough good - that's it, if not continue to test one by one until you reach the desired performance.

    I know it's a difficult one ey...

    So as far as testing goes I've tried some stuff but what I find is, for example, 5 workers is great for say 20 AI, but past that I want say more like 10+ workers, otherwise the AI is waiting around for other AI to calculate its path, e.g. AI 1 is calculating a path, so AI 16 is waiting for that calculation to complete before making its calculation.

    That is kind of a big gameplay part of the game, just how many AI I can have, since its a business simulation.

    This is a video of some stress testing, at 20+ workers all most AI seems okay, but anything lower than that and loads seem to wait around (which is why I don't think max workers throughput is directly tied to CPU cores... probably more threads).

    You mention 2 or more webworkers may end up on the same thread, this may start to explain things more. Are you aware of any writeups or any experience with how it decides when a new thread is made, or when to share one?

    One thing I may just have to come up with is a way to identify the client/device and then launch an appropriate amount of workers for that.. and then tweak gameplay to match

    Cheers, jammy :)

  15. Hi all,

    I know that google may answer this question but actually it's not as straight forward, since so many people say so many different things.

    My question is, what is the maximum amount of web workers I SHOULD create for my game.

    I can see some posts saying that you should only create one worker per CPU core, but this just doesn't seem right. My webworkers do seem to increase throughput even after the count of them is higher than my CPU cores.

    My game may run on Phone/Tablet or Desktop so the maximum amount of webworkers I SHOULD create would probably vary depending on the device/client.

    Would really appreciate thoughts/tricks and any links to write-ups.

    I would REALLY appreciate any write-up on just how webworkers generate their threads in the OS and just how many are effective on a single core machine vs dual core machine+

    For consideration, the webworkers I am using are for pathfinding and I have a fair few AI, so the more workers I can achieve, the more AI will all be moving at once.

    Thanks, Jam


  16. Hiya guys,

    I know this issue crops up a lot but I've just added both pixi-tilemap and pixi-viewport to my game and I've been struggling quite a bit, getting help with this one issue might relieve the stress a bit.

    So I have a tileset that when zoomed causes the grid effect normally caused by floating point textures. Since i'm using pixi-tilemap and pixi-viewport... my question is which one should I be looking at to resolve the issue?

    I can't seem to find a way to quickly tell either to not use floating points on anything, and the standard PIXI resolution/pixel rounding/scale_mode is set at the top of the code.

    Maybe the answer is to code my own zooming code and pass that to pixi-viewport as pixel values using viewport.zoom() but if I can avoid that then bonus.



    Any helps/tips much appreciated :) Also thanks for the libraries, great performance/usability gains since adding them.

  17. Hi guys,

    Looking for some help with my next hobby project to add some quality to the graphical side.

    Budget: $10-$30 per asset

    Work: A bunch of tileset and objects for the game

    Game: Data Center Simulation

    The game is based on this engine so will have the same perspectives but I want a completely different look. Consider Pixel Art and others.


    Ideally contact me on Discord for a chat or contact on here.


    Thanks, Adam.