Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
A jam submission

Farm with Code / JavaScriptView game page

Submitted by Igor Konyakhin — 29 minutes, 57 seconds before the deadline
Add to collection

Play game

Farm with Code / JavaScript's itch.io page

Results

CriteriaRankScore*Raw Score
Creativity#784.0004.000
WOWIE!#3143.1543.154
On Topic#3913.2313.231
Fun#4912.7312.731
Visuals#5262.8082.808
Sound#7941.5771.577
Simplicity#9321.5771.577

Ranked from 26 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.

Music Source
No music

Credits
Me = Igor Konyakhin = Awesome GameDev: https://youtu.be/aP9eKrnyxe4

Leave a comment

Log in with itch.io to leave a comment.

Comments

Viewing comments 22 to 3 of 22 · Next page · Last page
Submitted(+1)

this iz sick, if it were a full release with a tutorial and progressive difficulty i could see myself playing it a lot (just idk javascript that well)

Developer

Thanks! I am glad you liked it.

Yes, tutorial and progressive difficulty is totally missing!

Follow me on Itch, I might have an update one day:)

Submitted(+1)

yeah would be cool to see!

Submitted(+1)

This is a fascinating sort of submission, certainly not the kind of thing I would expect to see for a 3 day game jam. It's really impressive, and I love the concept. Unfortunately, I didn't have time to fully figure out how to work everything, but the reason for that is less about learning JavaScript, and more about the lack of tutorialization. I would have loved to see a clearer breakdown of your objectives than immediately going from level 1 "you're programming an AI to farm better" to level 100 "here's a more efficient starting program of some 300 lines of code". 

Knowing what it means for your robot to get better at farming, what the different tiles are about, how the tools work, and what are some examples of small changes you can make to the starter code all would have been great, and I think there's a way to communicate that kind of tutorial outside of a wiki page in the description.

Very nice work, and I would like to see the YouTube shorts version of what it looks like to be really good at this game.

Developer

Thanks for checking out and writing an extensive comment!

I absolutely agree tutorial/story/progression is missing. I just didn't have time. I had to cut so much planned stuff and I barely managed to finish the "main loop" (buy seeds, plant, extract, sell) in time.

and I think there's a way to communicate that kind of tutorial outside of a wiki page in the description

I didn't quite understand the statement. Did you mean I can write "mission list" on the game page as a "jam hotfix"?

I would like to see the YouTube shorts version of what it looks like to be really good at this game

At this stage it's too early to make videos about being really good at the game, since there are so many "big" components missing (upgrades, (on-map)shops, research, multiple drones). And even stronger statement: you can't be really good at the game yet, because the drone still misses a key component: camera. The idea is that drones should be able to see some tiles around them, and you could write map-agnostic algorithm, which would explore map and choose locations on its own (instead of using predefined ones).

Submitted

A good idea, but kinda complex for a gamejam game

Developer

I don't thing there is a fixed correct complexity level. Different people prefer different genres and complexities.

Submitted

Absolutely beautiful idea, very original!

I'm not a javascript expert but it seems like a lot of stuff

Developer

Thanks! How far in the game did you get?

Submitted

Fun game I am not a javascript expert but I still really enjoy it !

Developer

Thanks! How much did you play?

Submitted

Uh well .. that is not simple ^^ but a very creative idea and if you know what you do a nice experience

Developer

Thanks! How much did you play?

Submitted(+1)

Even though I've never used JavaScript before, this is great! I spent some time trying to figure it out since I really like the idea, but I ended up getting stumped since I was unable to figure out how to output to the console. Specifically, I was trying to output the available market items so I could see what types of seeds were available for purchase (I was sick of oranges). In my efforts, I put print() in the update(drone) method, which was a funny experience for sure. Even though I made little progress, it was fun to try things like setting drone.inventory.money to billions of dollars.

I want to come back to this in the future when I have more time to learn and write all the job methods from scratch to see how optimal of a farm I can have. I also think that leaderboards (perhaps dollars per second) would be perfect. Well done :] 

Developer(+1)
I was unable to figure out how to output to the console

You do that with:

console.log(obj)
console.warn(3456)
console.error('qwer')

It will output in your browser console (not in-game console). There are some commented out debug console.log's in the starter code.

so I could see what types of seeds were available for purchase

Oh ... it's actually my oversight not to mention available items. I'll update the docs.

it was fun to try things like setting drone.inventory.money to billions of dollars

I had to make a special "view-component" for every component of the drone. I think the system should be safe, but I am not entirely sure as I was rushing.

I also think that leaderboards (perhaps dollars per second) would be perfect

Leaderboard would be cool, but quite low on a priority list. A few top priority things would be:

  • Camera component
  • Plants spreading onto nearby tiles
  • Tutorial, story, progression
  • Several drones
  • Upgrades
  • More UI
  • TypeScript
  • etc.

Oh, I had to cut so much!

Thanks for putting in the effort and I'm glad you had fun. Have you made any screenshots of your game?

Submitted

Really nice job! I guess this game is not  suitable for everyone, but as a software dev I do like it very much :D

Developer

True, but arguably all games are not for everyone, some people won't like horror, others won't like shooters. It's ok to have a specific target audience.

How much did you play?

Submitted(+1)

Agree! Not that much tbh, wanted to come back at another point since I started this game after work and I had enough coding for the day honestly :D

Submitted(+1)

^^ Ok I need to come back to this :D need to spend more time

Developer

True, game will take quite some time to understand :D

Submitted

my head hurts

Developer

I know it's not a simple game. Do you have any questions I can help you with?

Submitted (1 edit) (+1)

While this is definitively not simple and takes time and effort to play at, I think this is the most WOWIE! game I played so far.  I love the idea and the concept. This must have been a great effort to pull it out in just 3 days. Congratulations. I thought to be tough to have done my game with Javascript and three.js, but making a game that you play with javascript is on another level!

Developer

Thanks for nice words! How far did you manage to get?

This must have been a great effort to pull it out in just 3 days

I was actually busy significant portion of the first day, so I probably only had about ~2.3 days and yeah I was working non-stop (no food, only 3 hours of sleep the last night), barely managed to fit in the critical stuff (selling, planting, plant growth) had TypeScript compilation errors, which I managed to fix before the original deadline, but then had it not working on Itch, which took ~30 minutes out of the extended deadline to solve (turns out Vite by default assumes your site will be hosted at "root.domain", but Itch hosts at "root.domain/some/url").

but making a game that you play with javascript is on another level!

This is actually the simple part and one of the reasons I chose JavaScript: you just do `eval()` 😅 (with a bit of extra stuff to export necessary functions).
But for each part of the drone (like "Motor") I had to program the corresponding view-object (MotorView), which would only give you access to things you are supposed to have access to (you shouldn't just be able to change drone `position` arbitrarily, you should only be able to control its `force` and then once again - this `force` is capped, you shouldn't be able to set arbitrarily large values).

Submitted(+1)

This is really cool <3 I wish it started off a bit simpler and you introduce more things you can do with code as you play and learn :) 

Developer(+1)

Thanks for sharing!

That's absolutely how it needs to be, but I didn't have time. Next priorities were to:

  • Make plants spread into nearby tiles
  • Add "camera" to the bot (so it could see the nearby tiles)
  • Create Campaign=Story=Tutorial

Although, now that I think about it, tutorial should have been the #1 on the list.

Submitted(+1)

Very cool game, I enjoyed playing it!

I really really like, that you can generate and edit your own world.

Great job

Developer

Thanks for playing and I'm glad you liked it!

I really really like, that you can generate and edit your own world.

For most of the development I was actually planning to hide this functionality for end-player, but decided there is really not much reason to and just grouped it under "Map Gen" to take less space.

How far did you get?

Submitted (1 edit) (+1)

Really nice game! but what would make it even better is if you implemented blockly (https://developers.google.com/blockly), It is an easy way for non programers to program in javascript! It is used in games and programming websites. I REALLY SUGGEST giving it a try for your game and many people (programmers and non-programmers) would play your game.

Developer

Thanks for checking out!

but what would make it even better is if you implemented blockly

That's a really cool suggestion! I definitely don't want to get rid of "raw" JavaScript, as the real drone programs are expected to get quite complex (286 lines in the current starter code already 😅). But Blocky generates JavaScript code so it might fit in. Thanks:)

I had the idea to have some sort of "visual scripting" in game, but didn't have time to research available options or even to incorporate any.

Submitted(+1)

We need more games like this, there is so much content, great work!

Developer

Thanks! I subscribe to "make the games you want to play".

How far did you get?

Submitted(+1)

very cool

Developer

Thanks! How far did you progress?

Submitted(+1)

I really liked the idea but I dont know java so I wasnt able to get very far. I didnt do bad considering I had no idea what I was doing

Developer(+1)

Ok, thanks for checking out!

Between, Java and JavaScript are different languages:)

Submitted(+2)

Whoa this is nuts! Wow, I'm really impressed. It's like someone looked at dwarf fortress and thought "yeah let's make it even nerdier". My only complaint is that you forced me to use javascript after I specifically left front end for my back end dev job irl ;)

Developer

I actually didn't know about "Dward Fortress" before (although I heard a name a couple of times). I hate console graphics, so I guess I'd wait for the Steam release.

My loose inspiration was https://timon-1.itch.io/farmdrone (largely unfinished at the moment). Half of automation genre seems completely unexplored:

  • We have many games about automating building production (e.g. Factorio, Satisfactory and others), but
  • No (or few?) games about automating behaviors

It was something I wanted to try regardless and the theme just happened to match perfectly. I was short on time, so ended up cutting a lot of content. Most notably, drone has no "camera" which would allow for fully automated farming with landscape consideration.

Given the theme, I hoped there would be more games in these genre, but I have only found one another one so far: https://kypello.itch.io/semi-automated-shipping-company

I chose JavaScript because of its easy "eval()"😅 and it being a decent language (unlike, say, Lua). I actually wanted to incorporate TypeScript, but didn't have the time to figure out how to embed it properly.

C# also has built-in functionality to compile C# code, but I am not sure it would be as simple to incorporate if I were to make this whole thing in Unity.

Thanks for playing and I'm glad you liked it! How far did you get?

Submitted(+1)

Wow, this is very impressive!

Developer

Thanks:)

How far did you manage to get?

Submitted

Not very far tbh, I'm not that good at javascript

Submitted(+1)

Cool game if you understand some JavaScript. Was a bit hard to understand at first.

Developer

Thanks for playing!

How far did you get?

Submitted (1 edit)

Really good concept, but i don't know JavaScript    :(

Developer(+1)

Thanks! If you know C#/C++/Java, you should be fine, as they are close enough.

Submitted

I know C#, my game created in Unity

Developer

Most things are the same. Most notable differences:

  • No typings in JavaScript
  • Defining functions is different:
// C#:
float multiply(float a, float b) { return a * b; }
// JavaScript:
function multiply(a, b) { return a * b; }
// Or (shorter syntax):
const multiply = (a, b) => a * b;
  • Creating arrays is different:
// C#:
new int[] { 1, 2, 3, 4 }
// JavaScript
[ 1, 2, 3, 4 ]

You can just create objects "out of thin air", no need to pre-define classes, structs and other stuff:

// C#
struct Point {
    float x;
    float y;
}
// later
var point = new Point { x = 10, y = 20 };
// JavaScript
let point = { x: 10, y: 20 };

I hope this should get you started. Let me know if you have any other questions!

Submitted(+1)

I tried. Good! Thank you!  It was little bit difficult, i am from russia, i am 13 and I know english not perfectly.

:|

Developer

Привет, я тоже

Submitted

Хах, я подозревал

Viewing comments 22 to 3 of 22 · Next page · Last page