Hi gang,
I just wanted to make everyone aware of a little tutorial series I started writing that went live last weekend. In it, I give the basic introduction to Gideros Mobile and TileMap. Tutorial #2, I believe, is the simplest way to program with TileMap. The examples that come with Gideros Mobile require pre-generated Tiled maps which not everyone will want to use.
Anyway, take a look and tell me what you think:
https://programmingbymoonlight.com/Thanks.
Comments
HeadsUp: When I first started with Gideros I made my own tilemap scrolling class. It was very cool but did not handle scaling very well. I found in the end that using the supplied tilemap features in Gideros was best.
I'm looking forward to seeing how you go about generating the dungeons. Are you going to use some existing code and convert it to Lua? or are you going to roll your own?
This post on my blog roughly explains how I generate dungeons and has some links to the better articles I found on the subject. This is a sample of my generators output.
I hope you have some plans for implementing a user interface, that's kind of important in a RogueLike. This is a small video showing my user interface. You'll notice it's totally influenced by Pixel Dungeon"
Anyway, good luck with the tutorials, and I'm always happy to assist where possible
Likes: simwhi
https://github.com/gideros/gideros
https://www.youtube.com/c/JohnBlackburn1975
Thanks for the contribution @Greywine . =D>
Likes: MoKaLux
I'll put the next tutorial up this weekend.
Antix, I love your website. You made a lot of progress. My next tutorial was going to go over random dungeons. Did you post your code for the dungeon generation anywhere? If so, I can link to it.
I never posted my own generator, as it will be used in my game when I get round to working on it again.
Look forward to the next tutorial in the series
My 8-steps to a roguelike is now complete. Hopefully someone will be inspired to create their own game using Gideros Mobile!
https://programmingbymoonlight.com/roguelike-intro/
Likes: talis, pie, antix, simwhi, MoKaLux
My biggest kongoratz!
=D>
In part two you use Dependencies to make sure constants.lua is available to other files as required. It would be better to define all of your constants in main.lua, or better yet init.lua (which is loaded even before main.lua) so all constants will be available on demand and you won't need to ever look at the dependencies screen #:-S
The tilemap images you use aren't free for a commercial product. It might be better to grab some off opengameart.org (there are heaps of those "LPC" style graphics there) just incase somebody followed your articles and published their result on the play store
Maybe it would have been better to start using classes for everything immediately instead of introducing them in part 4 and having to re-code a ton of stuff |)
Related to the above, maybe it would have been better to introduce
SceneManager from the start also
Where you start adding EnterFrame events to classes. In my experience it is more efficient to have each class have it's own update(dt) function and then have just one EnterFrame event in your game class which calls the update function of each class every frame. EnterFrame events (as well as others) really begin to kill performance when you begin to have many of them :O
As with a few other things it would be better to use a TexturePack for all graphics right from the get-go because it really is the easiest thing to use. You don't need to have loads of numbers to fetch regions, just "GetTextureRegion("somefilename.png")
Of course I know this is a beginner tutorial but it sort of does pay off in the end to show people how things "kind of should be done" so they don't end-up going down a dark path (sad attempt at a pun there)
I think it would have been great to introduce a small inventory and have a randomly generated item to collect in the map too. This I feel would have pretty much covered everything since after-all you are playing to kill monsters "and" collect loot
Looking forward to your next great tutorial man :bz
Great feedback and ideas. Inventory is the thing everyone asks about so it looks like I'll have to write another tutorial!
I struggled with classes when I was learning. Too many selfs and self. and self: !? So I decided to teach it along the way so others may see how to turn straight code into class code. Hopefully they'll see it's actually pretty straightforward, but for beginners sometimes you just want to get something on the screen that works.
Thanks again for the comments.
Likes: MoKaLux
I look forward to an inventory tutorial :bz
Likes: antix
Actually tutorials & documentation seem to be the only weakness of Gideros (I've seen a post somewhere on the forum that many plugins are undocumented, though I don't what is their actual state currently)
Likes: antix
"What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
“The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
With Opera VPN turned on domain is accessible.
Probably whole IP range is blacklisted by your hosting provider for anti-ddos' sake.
(but it's not big deal, no need to change something)
"What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
“The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
https://www.whatismyip.com/blacklist-check/
When i run the analysis this IP range is listed in 2 lists. But it is not a big deal, those lists are so much dynamic, soon it will be normal again.
FYI
Likes: antix, MoKaLux