I have been working for a while on a project of mine called Harvest Online. The games idea is similar to Harvest Moon, with a couple added features. The key elements of the game will be centered around farming, professions, and the in-game trade system. I'v played with the ideas of questing, in-game events, combat, etc. However I would like to focus on the core game-play first, then add features later. The game will be fully multiplayer, so you can trade with others, visit their farms, etc.

I noticed that you are having a tile-based game. Just as obvious, tile based games often have that repetitive texture tile look, sorry for talking cynically. To solve this, I suggest picking random spots on start up, say if this spot has 2x2 (or 3x3 or etc...), and attach a random grass patch on it? I think that would be cool.

Thanks for the comments everyone! I'll respond to them in the order they are posted...

I'v considered that concept and already have a solution in mind. I think that every base tile (ground) will have a few variation tiles attached to it. When the map is created initially it will choose from the variations at random. This will give it a better overall feel, and a bit of randomness. I will mentioned, all the tiles I have done thus far are done myself (and usually just taken off one of the first google search of sprite sheet/tile sheet). As you can guess, not the best work but enough to get the ball rolling while I develop back-end.

Thanks for the link, I'v never seen it before but it looks quite interesting. Though it also looked rather limited... I am expecting the scope of my games content to be rather large. Nice to take some inspiration from similar projects though!

Kpars that would be awesome if you were interested in giving me a hand with it. Do you just work with existing tiles, or do you also create your own? Either way I would be more then happy to have a little help with it (and hopefully make it look much better!). Whats the best way to contact you?

Lastly, I am not using any outside tools currently. I have imported a lot of custom tools I created (such as my own debugger, logging software, and database tool). Everything else is just basic standard java imports and coding. Oh I suppose technically I am using Eclipse to manage the project. Hope that answered your question kpars.

Fairly large update for everyone! I have recently been working on NPC's and have just started testing/implementation. Mind you, currently they are very simple (location, name, sprite, and a small wandering algorithm). I'll be developing the AI for them in the near future. Any suggestions on methods/algorithms to use? I'v also done a lot of other backend work in this update, however all-in-all its hard to see. Physics/collision engine got compleatly reworked and is now quite fantastic. As well, I have worked slightly on the administration controls, and general player interaction. A few more options, as well as a lot of general utility tools in-game to make things easier to navigate/control. I'm thinking the next big update will be steered towards basic items, and probably start the introduction to the farming gameplay (planting, watering, etc).

I'm already aware of A* search, but I don't think I am going to choose it. At least not a simple version of A*. I'v been looking into it and I think that a waypoint method (http://mgrenier.me/2011/06/pathfinding-concept-the-basics/) would be a better choice for my game. Although to be fair, the AI for cows/chickens/etc doesn't need to be that complex. And equally, the NPC's wandering around town does not need to be very complex either... but why not have some fun with it and have amazing pathfinding anyways?

I was actually considering using a heavily modified convex hull algorithm to split the map into blocked areas and unblocked areas. Then use the points on the hull to find the shortest distance while avoiding obstacles until it gets a straight line path to the goal area. It could work, especially if I kept all paths that had a certain level of efficiency. That way it could choose one at random, and it would look a little less planned, but still efficient.

After a little more research, the idea I was thinking about is very similar to a Navigation Mesh. Still not sold on either idea, but at least its giving me a little more to think about.

It's been a little while since I have posted here, so I thought I'd give an update about everything I have been working on lately. I'll also bring on a screenshot to show off some of the newest stuff in the game!

Firstly, a note on some of the things you will not see, or back-end changes. I'v made a number of minor changes across the client/server to not only improve efficiency, but to also make it more understandable and straightforward. I'v been reading a few books on good Java code practices, and am taking them into account. I'v also touched up the admin panel significantly, as I am expecting to have to do some content development in the near future. Various utility features (such as warping to places, adding maps, location, map-fills, map data, etc) have been added to make not only map development better, but also to help better develop the general admin controls of the game.

Moving right along, I also did quite a bit of work on finishing up the skills system. You can now gain experience and level your skills appropriately. Mind you, the only implemented skill is weeding/cultivating. So not really much to do, but all the skills are based on the same system so they should all work once the needed features are added later! I'v also added a lot of new code for multi-player functionality. I'm expecting to do an alpha testing phase in the near future, and look forward to seeing the challenges. I imagine the server will probably end up needing lots of modifications *sigh*.

On a final note, I am working through a bit of concern with two notes. The first is how I should implement player owned farms. My current thought is to have a "real-estate style board" somewhere in the world, where you can click it and purchase property from it. Then you travel to the area (likely a path leading off the map) and when you get close it asks which farm you wish to travel too. Anyone have any alternative ideas to this? I am very open to suggestions. My other question is I will be working with in-game menus shortly and was wondering what people thought was better to deal with. I'm currently trying to pick between using a JFrame/JPanel pop-up window, or using the current map (Buffered Image) and drawing something ontop of it. Thoughts?

An interesting topic for anyone who might be looking. How do people recommend I handle time-delay events. For example, planting a crop may take 2 hours to grow, or when you hoe the ground after 1 day it disperses and becomes uncultivated. My initial thought was to have the client send a job request to the server, and then the server puts that job into a queuing system (self built of course,like everything else I am working with).

The current version obviously needs some improvement (for example, saving the tasks on shutdown to the database, queue limits, speed/space optimization). However I have been wondering if this is the best way to go. What do you guys think, any thoughts on a direction or opinion on my current system?

You can log the system time at which it was planted and calculate how much time has passed since it was planted.

Thats the plan right now, and more or less what it does. For example, the time delay on a cultivated spot being uncultivated is about an hour (3600000 miliseconds). What I do is use the current server time and add the delay, once its past that time the event transpires.

I would not focus on the art too much. I just picked those up off google images quickly to throw some content into the game. I'll be focused on textures after the game is working well and has a reasonable amount done, before I worry about the textures.

In the most likely case, I'll hire someone to do all the textures at once in the same art style.

So just a minor update for everyone, been working on redoing the server. I switched to using a new type of server architecture, non-blocking sockets. Seems to work much better then my previous implementation. Also switched the login around, to handle master-slave servers (e.g. so more people can host multiple servers, and they are all connected). Oh and finally, started working on making the GUI all implemented directly into the game screen.

For anyone interested, the games development has come along drastically. We have changed the art style (be in fact, having a good artist working on it. Here is an example of the work he has done lately. Thoughts?

looks to be coming along nicely, I like your new graphics style. Although it still has that "amaturey" feel to it. If you want my critical nitpicky advice.. I like it when people are super nitpicky about my work, so I give others the same nitpicky treatment, so please don't take too much offense to these suggestions:

- Add more random textures, maybe add a second grass color you can overlay on the first, as kind of a blotchy secondary color.- Draw your buildings modular with random parts, instead of as a whole.. that way you can mix and match buildings down the road.- Add more saturation to the tree leaves.- Either Anti-alias the font, or make it larger/more pixelated. It doesn't blend in with the game.. the pixel size does not match.- Add shadows! (if the engine allows you to have semi-transparent layers) It'll make a *huge* difference in the depth of the trees, the building and the cliff side.- Add a bolder outline around your textures, the bush under the tree to the left is good, but the other plants blend in too much with the terrain. Dropping the outline of the trees and bushes by about 30-50RGB will make them "pop".

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org