Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411283 Posts in 69325 Topics- by 58380 Members - Latest Member: bob1029

March 29, 2024, 07:31:02 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsMoonQuest
Pages: 1 ... 181 182 [183] 184 185 ... 189
Print
Author Topic: MoonQuest  (Read 1300402 times)
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3640 on: January 25, 2017, 11:21:43 PM »

Update: Continuing on the Game Planner, this week I started to implement high-level Plan Features in the game engine. This includes things like ORE, OBSTRUCTION, TREES, and so on. I'm also adding the high-level parameters for the different areas. So for instance, I can now change the Clay seam in the forest at the planner level ...

Code:
attributes.forestSeamMaterial = B_SOIL;
attributes.forestUnderForestStoneMaterial = B_HUSK;
attributes.forestCaveStoneMaterial = B_MOSS;

Some areas, like the forest, support multiple features of the same type. For instance to add a few different ores, including a rare silver ore that appears in the lowest level of the forest, I can write something like...

Code:
std::vector<OreSpec> ores = {
OreSpec{ RP_FOREST_UNDERFOREST, OT_IRON_ORE, OD_COMMON },
OreSpec{ RP_FOREST_UNDERFOREST, OT_COAL, OD_LESS_COMMON },
OreSpec{ RP_FOREST_UNDERFOREST, OT_SALT_ORE, OD_LESS_COMMON },
OreSpec{ RP_FOREST_CAVE, OT_SILVER_ORE, OD_RARE },
};

Each area supports different sets of features, and offers different implementations. The tunnel, for instance, supports at most one Ore feature and deposits the ore in a completely different way to the forest. (This is because of the differing approaches to area generation.) Other features to support include MobGroups, NPCs, Containers, and World Objects. A lot of this work is just in writing the interface between the Planner and the world specification stuff. It's boring technicalities, but once it's done I'll have a separate high-level layer at which the global game structure is laid out.

Happy Australia day!
Logged

oahda
Level 10
*****



View Profile
« Reply #3641 on: January 26, 2017, 03:22:54 AM »

Huh, I thought Moonman was written in C for some reason.

And yes, Boss Keys is a lovely series!
Logged

VampireSquid
Level 0
***


View Profile
« Reply #3642 on: January 26, 2017, 10:53:47 AM »

Huh, I thought Moonman was written in C for some reason.

Not really my place to respond to this but I think he said earlier it is in c++.
Logged
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3643 on: January 28, 2017, 05:31:01 PM »

Yep C++ for game and Python for tools. I can't imagine writing it in C tbh.
Logged

Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #3644 on: January 30, 2017, 02:11:11 AM »

Like the graphics very much. Gameplay also looks promising. Keep up the good work!
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3645 on: January 30, 2017, 02:40:33 PM »

Like the graphics very much. Gameplay also looks promising. Keep up the good work!

Cheers Smiley
Logged

eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3646 on: February 03, 2017, 08:49:24 PM »

Update: A big challenge with world generation is determining the way the different regions connect up, what they contain, and how that affects a particular game. For the beta we're going to have a few different templates for how a world may be structured, and the 'world solver' will use that structure to determine the obstacles and mechanisms between the regions. Last fortnight I had written a solver prototype in Python, then last week I started to add high-level interfaces to the different regions. This week I connected those two pieces. Now I have a working prototype of that system. In the image below you can see how a structural description written in Python (on the right) is used to generate an actually-running-in-game region on the left.



With this approach I can prototype faster; however, it requires a lot of code duplication between the c++ engine and the python solver. Ideally I'd like to use the solver at run-time, but for this release I've decided to pre-generate a set of world structures. To get them into the game I generate c++ code from the python structure, using a bunch of simple templates like this:



Part of the work of the planner involves specifying parameters of areas -- to support this I started to implement some of these parameters. For instance, here is the "tunnel" subregion -- a generic area connecting two doors. Some of the parameters of the tunnel are: length, height, and base material. Additional tunnels support pockets of ores, natural obstructions, npcs, flooding with lava or water, and different kinds of entrance types. Here's two examples of tunnels that vary only in their parameters and generation seed. We've got some interesting ideas for more connector and dead-end types, and I think the world will start to feel way more intricate with enough variations.





To step back from dev-talk a second, I've got a lot going on right now but I'm holding it together. Alex and I are keeping focused on our goal, but it seems like it is always receding into the distance. Besides the development we're also working on promotional images and starting to organise the assets for steam and itch and the website. Alex will be attending GDC in late February, so if you're there you should drop him a line on twitter and say hi. I'll be staying home this time, but I hope to make it next year.
Logged

eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3647 on: February 10, 2017, 08:31:37 PM »

Update: Updated high-level interface to mountain, including ore spec, trees (iron oak), ice seam, and entrances.

Added a symbolic mining tool tip. In the screenshot hovering over the shovel shows 2 digging and 1 mining power, and hovering over the hard clay shows that it requires 2 digging power; therefore, you know that the shovel will be capable of mining it. I'll like to extend this system at some point to support the blocks like WEB which can be destroyed by any tool, but only drops web when mined with the a FINE 1 tool. Another extension is to have additional special symbols etc. We'll see how it goes!



Most of this week was spent on creating promotional material for the game, including: the new website, steam assets, itch.io page, and so on. We built the website using Bootstrap as a base. The website is really simple and has a landing page, an about game page, a buy page, and some secondary pages like the changelog, presskit, etc. I used something called Mako to help generate the pages from simpler templates. All in all I'm pretty happy with how it turned out and can't wait to show you guys.
Logged

eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3648 on: February 17, 2017, 01:36:12 AM »

Update: Just a tiny devlog entry this week. I've been doing work, not as much as usual, but have been very exhausted. I think it's all starting to catch up with me. Still a tonne of game coding to do, but this week I've been doing admin things like sorting out the website, testing itch/steam/humble deployment, and changing the game name everywhere I can. Alex has been cleaning up the starting cutscene placeholders and working on the company logo.

We've found a bug that I've missed for a while, something that causes the movement to stutter a bit. I spent a few hours today trying to hone in on it but it's hard to reproduce and I decided to leave it for now.
Logged

oahda
Level 10
*****



View Profile
« Reply #3649 on: February 17, 2017, 02:17:28 AM »

Changing the game name? It's not going to be called Moonman? o:
Logged

Malloy
Level 0
**

Feeka


View Profile
« Reply #3650 on: February 17, 2017, 02:40:12 AM »

No Moonman's Sky, obviously... good call imo!

Stupid question, purely because i'm lazy. Will this ship with co-op on early access?

Edit: I went through the early pages up until around page 30 and looks like you planned multiplayer Smiley

Kind regards,

Malloy
« Last Edit: February 17, 2017, 02:48:51 AM by Malloy » Logged
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3651 on: February 17, 2017, 05:02:40 PM »

Won't be called Moonman, correct. I talked about this a while back, but Moonman is still a main character so it's all good.

Malloy - no multiplayer, sorry. I decided to just have single player for now, but I'd love to add a couch co-op mode sometime. It'd probably be like Binding of Isaac, where the second player is just a side-kick.
Logged

johnfn
Level 0
**



View Profile
« Reply #3652 on: February 17, 2017, 06:54:15 PM »

Been lurking to follow this project for at least a year. Amazing work, and really inspiring!

One thing I'd really like to know is how you've managed to stay motivated and inspired throughout the 5+ year development time of this game. What do you do when you get discouraged or disappointed? How are you so consistent? Smiley
Logged

I'm working on Dream Harbor, a time-rewriting action-RPG, I run a music competition website, and I do other stuff too sometimes.
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3653 on: February 17, 2017, 09:00:34 PM »

One thing I'd really like to know is how you've managed to stay motivated and inspired throughout the 5+ year development time of this game. What do you do when you get discouraged or disappointed? How are you so consistent? Smiley

Hey there, thanks Smiley Here's how I remember the last few years:

  • Year 1 - Super fun and exciting, makin' games yeah
  • Year 2 - Refactoring the chaos of Year 1, making everything solid, lots of learning
  • Year 3 - Argh so sick of engine programming just want to make game, still not sure what game is
  • Year 4 - Exciting, just finished Kickstarter, finally at stage where I can make actual game
  • Year 5 - Tired! Got solid design done, lots of content, implemented extra features like AI, particles, etc
  • Now    - Exhausted! Almost ready to get public Beta out there, still some things to do
  • Year 6 - Big year of world building and adding all the remaining content
  • Year 7 - Fine tuning, balancing, ports, last touches, spin-offs
  • Year 8 - Time for next game!

Logged

_glitch
Guest
« Reply #3654 on: February 17, 2017, 10:47:59 PM »

One thing I'd really like to know is how you've managed to stay motivated and inspired throughout the 5+ year development time of this game. What do you do when you get discouraged or disappointed? How are you so consistent? Smiley

Hey there, thanks Smiley Here's how I remember the last few years:

  • Year 1 - Super fun and exciting, makin' games yeah
  • Year 2 - Refactoring the chaos of Year 1, making everything solid, lots of learning
  • Year 3 - Argh so sick of engine programming just want to make game, still not sure what game is
  • Year 4 - Exciting, just finished Kickstarter, finally at stage where I can make actual game
  • Year 5 - Tired! Got solid design done, lots of content, implemented extra features like AI, particles, etc
  • Now    - Exhausted! Almost ready to get public Beta out there, still some things to do
  • Year 6 - Big year of world building and adding all the remaining content
  • Year 7 - Fine tuning, balancing, ports, last touches, spin-offs
  • Year 8 - Time for next game!



I see public beta, i follow. Beer!
I also love the idea and the art style!
Logged
Zorg
Level 9
****



View Profile
« Reply #3655 on: February 18, 2017, 01:39:55 AM »

Won't be called Moonman, correct. I talked about this a while back[...]
Why? Beg

Edit: Did not find the original post, only a notice that you already purchased the domain.
« Last Edit: February 18, 2017, 01:49:21 AM by Zorg » Logged
oahda
Level 10
*****



View Profile
« Reply #3656 on: February 18, 2017, 01:44:16 AM »

wat it gon b call den
Logged

Pineapple
Level 10
*****

~♪


View Profile WWW
« Reply #3657 on: February 18, 2017, 05:39:34 AM »

wat it gon b call den

circle of da moon
Logged
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #3658 on: February 18, 2017, 04:03:50 PM »

Won't be called Moonman, correct. I talked about this a while back[...]
Why? Beg

Edit: Did not find the original post, only a notice that you already purchased the domain.

Google 'moonman', I wanted to use something not associated with that meme. It's all good, I like the new name and I hope u do too. I'll announce it close to the release.
Logged

qMopey
Level 6
*


View Profile WWW
« Reply #3659 on: February 18, 2017, 06:35:04 PM »

So in another 3 years? xD
Logged
Pages: 1 ... 181 182 [183] 184 185 ... 189
Print
Jump to:  

Theme orange-lt created by panic