Jump to content
  • entries
    13
  • comments
    5
  • views
    997

It's the Village Monsters Dev Diary Digest for July 22nd, 2017

Sign in to follow this  
WarpDogsVG

1214 views

It's the weekend, so that means I get to share all I worked on last week in another edition of the Developer Diary Digest!

EVENT & HOLIDAY SYSTEM

It seems like I've been putting off a holiday / event system for at least the last 6 months. It's one of the systems I've been most anticipating, but it relied on too many other moving pieces to work on...well, until now!

At the dawn of each day, the game now checks if there's an event scheduled, and if so it fires off any scripts related to it. It's pretty robust, and the scripts can do things like create holiday-specific visitors, add new music or decorations, change dialog, and a lot more.

Imgur

As I wrapped it up, I realized that I needed a way to inform the player about upcoming events and what they were all about. This naturally lead into the next thing I worked on...

A POSTAL SERVICE

You can now receive letters from villagers, visitors, and other friendly monsters in the game. The goal is to integrate the mail system into as many other parts of the game as I can. For example, you'll get a flyer the day before each holiday that explains it:

Imgur

Letters you receive from villagers will reflect their personalities as well as their disposition toward you. Most will be helpful or friendly, but others, like Taswell,

Imgur

probably won't be at first.

As I said above, I want mail to be integrated into as many other systems as I can. As I was browsing my list of features I got to "The ability to submit feedback from in-game" when I suddenly had an idea...

SENDING FEEDBACK VIA IN-GAME POSTAL SERVICE

...wouldn't it be cool if you could write letters to the developer from inside the game itself?

Imgur

Now obviously there's a lot of things to consider here - security, spam protection, etc. - but the idea is so cool to me that I'll do whatever it takes to make it work.

It's hard enough to encourage users to submit feedback, so providing something in-game that's also contextualized via a system they're going to be using every day can only help!

BIRD SONG

Finally, I'll end this week sharing a new 'flavor' feature.

If you've played any of the demos you've likely seen birds flying about every so often. But unlike real life, they've been totally silent.

Well not anymore! Birds that fly overhead will now chirp and caw and sing. I obviously can't record sounds via gifs, so I tried my best to provide an alternative:

Imgur

Well that'll do it for this week. Enjoy your weekend, y'all!

Sign in to follow this  


2 Comments


Recommended Comments

Love the idea of sending feedback in the game world. To keep your inbox free of spam, then instead of sending an email directly to your inbox, you could set up a server for it and send it in any format you'd like. Then it could be stashed in a database, viewed on a web page, exported to a spreadsheet, filtered for keywords, or whatever.

Anyway, enjoyed the post.

Share this comment


Link to comment
On 7/23/2017 at 2:17 AM, Aldacron said:

Love the idea of sending feedback in the game world. To keep your inbox free of spam, then instead of sending an email directly to your inbox, you could set up a server for it and send it in any format you'd like. Then it could be stashed in a database, viewed on a web page, exported to a spreadsheet, filtered for keywords, or whatever.

Anyway, enjoyed the post.

That's a good idea! Though I suppose even spam is better than nearly nothing at all...

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
  • Advertisement
  • Blog Entries

  • Similar Content

    • By ggenije
      Important: I am trying to realize in scrtach which is performance very low due to it's "virutal level" scrtach->flashplayer->java...
      Also i'm new to this forum so i'm sorry if I missed group (like last time)
      Like a title is saying:
      I have project ,and I get negative feedback on it because some people need 30 min to complete it (what is the planned time)
      but problem is that some people need EVEN 5 hours…(game is incremental/idle/upgrade type so it's important to keep same time ...)
      ———————————————————————————————————————-
      Of course people with slower computer will have less fps so game will be slower for them,
      so I have created TimeDelta system for each frame to calculate something to do per second
      for example
        Update(){move(TimeDelta*speed)}  so that mean it will be moving speed number of pixels(or units) per second so it will be same for almost each user.

      But problem is next:
      I have to change ySpeed by jumpPower (#PlayerJump in my project)
      when any jump button is pressed
      then in each frame decrease ySpeed by gravity it is(-10 * TimeDelta)
      but when someone have lower fps it will have higher TimeDelta and will fall faster but with same jump it turns out to jump significantly lower that changes core of game
      BUT even worse if fps suddenly in moment of jump then timeDelta would be 1 so player will jump much much MUCH higher , then fall much slower because timeDelta changed in meanwhile…(and the point of my game is about upgrading jump not complete game in first fps drop)


      —————————————————————————————————————————————————————

      Then I got an idea to fix TimeDelta (like in unity for rigibody) so it will be rounded like
      if calculated TimeDelta is 0.01834 it will be 0.02 fixed
      if weaker computer is using it the TImeDelta will be 0.143 so runded to 0.14 and so on…

      I did not manage to realize it… i tried to calculate it before main initialization of game objects
      but I'm afraid to fps will drop in moment that is calculating so it will be much diffirent…
      I was trying with empty loop(400)(in scrtach even this is taking time) to calculate it but i'm not sure is it right

      So is there good way to realize this fixed TimeDelta
      I only have timer function to use and time difference between frames
       
      This_is_the_link_for_the_game
    • By Kamal Wafi
      Hi there,
      i recently start learning unity and im working in my first game ,
       
      I was wondering if unity had functions to support the motion control effect (tilting screen to move character) you see
      in doodle jump (which is 2d game) ? If it exists, what are they called? and how it works ?

      Thanks
    • By 3dmodelerguy
      For reference I am use Unity as my game engine and the A* Pathfinding Project for path finding as there is no chance I would be able to create anything close to as performant as that in any reasonable amount of time.
      So I am looking to build a game that is going to have a very similar style as Prison Architect / Rim World / SimAirport / etc. One of the things that I assume is going to effect performance is path finding. Decisions about the game I have already made that I think relate to this are:
      1. While I am going to be using Colliders, all of them will be trigger colliders so everything can pass through each other and I will not be use physics for anything else as it has no relevance for my game
      2. I am going to want to have a soft cap at the map size being 300x300 (90,000 tiles), I might allow bigger sizes but do something like Rim World does in warning the player about possible side effect (whether it be performance or gameplay)
      3. The map will be somewhat dynamic in that the user will be able to build / gather stuff from the map but outside of that, it should not change very much
      Now I am going to build my game around the idea that users would be in control of no more than 50 pawns at any given time (which is something I can probably enforce through the game play) but I am also going to want to have number other pawns that are AI controlled on the map (NPCs, animals, etc.) that would also need path finding enabled. Now I did a basic test in which I have X number of pawns pick a random location in the 300 x 300 map. move towards it, and then change the location every 3-5 seconds. My initial test was pretty slow (not surprising as I was calculating the path every frame for each pawn) so I decided to cache the calculated path results and only update it ever 2 seconds which got me:
      100 pawns: 250 - 450 FPS
      150 pawns: 160 - 300 FPS
      200 pawns: 90 - 150 FPS
      250 pawns: 50 - 100 FPS
      There is very little extra happening in the game outside of rendering the tilemap.
      I would imagine the most pawns on the map at a given time that need path finding might be a 1000 (and I would probably be able to make due with like 500 - 600). Now obviously I would not need all the pawn to be calculation paths every 2 seconds nor would they need to be calculating paths that are so long but even at a 5 second path refresh rate and paths that are up to 10 tiles long, I am still only able to get to about 400 pawns before I start to see some big performance issues. The issue with reducing the refresh rate is that there are going to be cases where maybe a wall is built before the pawns path is refreshed having them walk through the wall but not sure if there is a clean way to update the path only when needed.
      I am sure when I don't run the game in the Unity editor I will see increase performance but I am just trying to figure out what things I could be doing to make sure path finding is as smaller of a performance hit as possible as there is a lot of other simulation stuff I am going to want to run on top of the path finding.
    • By phil67rpg
      well I am able to get my sprites to rotate and move in all directions, I have drawn two plane sprites, I am also able to shoot a bullet in the up direction, I want to shoot bullets in all directions just like my plane rotates, I just need a hint on how to proceed, go easy on me this is new stuff to me. However I am making progress.
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!