Just FYI... The islands are not determined by land vs water. Each block / cell has a location on the grid, and it's location determines what biome it gets. If you dig an island up, and then recreate it, it will still have the same biome as the original island that was there.
Casteele
Recent community posts
I really advise you do not do it. Not because it is 'cheating', which I do not care if you do or do not -- but because it seriously breaks and bugs the game, making it unplayable. It really duplicates things... and duplicates them some.. and some more.. and some more.. until the end of time, causing your computer to run out of storage, memory, etc. Okay, that is a small exaggeration; You can always close the page / browser to stop it, but then you cannot play the game. So why do it?
Also, my post / comment (above) already said how to do it.
The game becomes unresponsive at random times, and random click-ables.. I am able to click certain things, but not others. At one point, I could not return to "Finance", but almost everything else worked.
Also, some kind of save state/progress would be ideal: With the above issue, I tried to reload the game, but had to start over from he beginning of the game. :-(
I do suggest the next "unlockables" be shown along with what is needed to unlock them. (And possibly some which remain "hidden" until
unlocked....)
Agreed that tying anything but display updates to frame rate is a very bad thing. Better to have a stable and reliable "master clock", such as one with a period of 100 milliseconds (small enough that only bad "system lag"/overload would be apparent o human perception). Ideally, that should be he only clock anything is "tied to" -- even the frame rate should be based on the master clock. Likewise, the main game loop, event detection, event processing (keep detection and processing as two separate steps! That way, in a shooting game for example, both entities shoot each other simultaneously, both get detected _first_, then handled after all other detections), and idle hand-off (giving time back to the OS so it can handle other system and user tasks, screen updates, etc.), should all be based on the master clock. In a complex system, you could assign each to a separate thread and/or CPU/core.
As a start, I suggest you search for and read Robert Nystrom's "Game Programming Patterns" (You can buy it in print, of read the free version online).
Several issues:
(1) Does "To be continued" mean "Not yet implemented"?
(2) After the first (or maybe second or third?) "Midnight" with Morticia, she no longer does anything but giving that response to "talk later..."
(3) The game does not seem to recognize when I buy Tricia the emoji pack and receive the picture. Trying to IM her again goes directly to "Buy Emoji" again.
(4) I never could get to another art class with Beth, and now the task is gone from the list.
(5) Minor point: There should be a version for Linux users. The download is too large and fails to finish, so I am not able to try it under Linux Wine or Mono. Maybe (a) split it in to multiple small archives, and/or (b) use 7-zip for higher compression/smaller file(s).
Re (1), perhaps instead of an option, have different commands? "Find and Pick" to get from storage only, "Find and Mine" to get from raw resource piles only, and maybe a "Find and Get" which would get from either? As it is, it reminds me of how "Smart" phones like to "auto-correct" with the wrong correction... But at least with those you can choose to force it to your desired result.
As map size and game complexity grows. it will become less likely to have a single storage box dedicated to each item. Instead, transport lines will evolve: CMs will mine and deposit raw goods in areas where they are found, while other CMs will transport from those collection centers to different production areas where they are needed. (A true "ideal" would be a distribution "on demand", instead of "equally spread out"...)
In reality, a well-designed distribution is the opposite of "one specific storage", but a need to locate one of possibly many storage and staging sites with the desired item -- the lower cost of finding it outweighs the larger cost of walking across the map only to discover the single storage site is empty.
(2) That is not entirely true. A program can use logic to avoid wasted CPU or I/O. If a file is exactly 2 bytes in size, and you have already read 2 bytes, you know trying to read it again will give an EOF. Likewise, a CM knows if it is occupying the space requested, and nothing else is (or can, as the game is currently designed), it can skip trying to take take a step backwards to try to grab the space it just vacated.
A general "Find" feature would be a suitable alternative. But you can still assume that the CM has sensors (i.e., eyes) and can already know the command will fail.
Perhaps the resource positions can hold a variable amount of resources? The image used can vary by how much is currently available? (Right now, there are only two types of each, a "5 count" and "1500 count" version.) Possibly add some very high (maybe even infinite?) resource tiles, especially near the edges.
The ice might vary according to how much heat it is near. Adjacent to a heat source might make it melt (maybe within 2 tiles of a heater?) Likewise, some way to make ice from water might be handy. Could be an "ice machine", and/or a "heat shield" type placement.
There are some other issues, however...
(1) "Find and Pick" needs some more/better logic. Ideally, it should be able to include/exclude types, such as "From Box" (storage boxes), "From Raw" (I call those "piles" of raw/not-yet-mined resources), or even both. Perhaps even the ability to pick both but give a preferred type (Pick from Box, if available, raw pile otherwise). This is because I set up a CraftoMate (hereafter referred to as just CM) with a program to "Find and Pick", "Drop to" a box, then "To idle". But the result surprised me: It worked the _first_ time, but the second time it picked from the box it just dropped to (since it was now closest)! I adjusted to program to include a "Move to" first, but later in the game it caused problems when a) I had multiple storage boxes spread out on the map and the raw resources piles eventually became depleted. (Likewise, the "Drop to" might be able to only drop "On Ground" or "to Box".)
(2) Some degree of "look ahead" would be nice. I was trying to clear two adjacent Stone piles, so I had he logic of "Pick From" the first, and if that failed, it would "Pick From" the second. It worked, but every time it would move back to the first position, fail because it already cleared the tile, then move back to the second position. It should see that the first is already clear and go directly to the second, instead of wasting power moving back and forth needlessly.
(3) Related to (2), the "Warning" icon in the upper right that appears next to the pause button should not appear until the CM becomes truly "stuck". Every time it went to the first position and failed, the icon would pop up and then go away as soon as it went on to the second position. Not only does it create a momentary flash that distracted me, it also made it harder to be able to find and focus on the real problem areas/CMs which are stuck.
Some other observations and ideas:
-- I would like some detail/info on how variables work.
-- I kind of miss the old "Low Power" mechanics. I suggest that, instead of making it an "if/then/else" style operation, that you make it more like a sub-program (but not an exception that can occur any time -- only when instructed to check power). That is, create a "Low Power" label lower down like was done previously, and when the "Check Power" item executes, it will either continue to the next instruction, or "Jump" to the "Low Power" sub-program. This way, upon fixing the low power condition, we can choose to "Resume Next" which will go back to the "Low Power" check and continue on, or we could "Resume Idle" similar to the "To idle" instruction.
-- Make certain items not "eat-able". While experimenting, a flawed program made one of my CMs "eat" a seed. Oops. Also, some way of checking/testing _what_ if being held would be nice, to prevent accidentally eating the wrong item (especially when holding two items).
-- Related to the above, the ability of a grown tree to (sometimes?) "drop" a seed as well as wood would be nice.
-- Add an instruction to "Feed" another CM (as well as one to find one needing power). This way, we could assign one CM to "Stand By" the Battery Storage box, and when another CM needs power, the assigned one can grab a Battery and go feed it to the one needing power. (This could also be combined with my "Low power" suggestion to maybe add a "Call For Help" instruction, which would pause the bot until help arrives... or the player corrects the situation.)
-- Add the ability to pick up and move the "Current Execution" icon to any instruction in the current program screen.
-- A CM instruction to "Wait", which would make it wait (do nothing, such as "10 seconds", or until an even occurs, such as the "Feed" idea).
-- A "Give to" instruction, which could give to another CM. (Useful for things like "Feed"?)
Of course, I still hope to see:
-- Program labels, which could be targets of a "GoTo" instruction.
-- Sub-programs, which could be done with "Call" and "Return" instructions.
-- Real "if (condition) / then / else" logic. (Especially useful with sub-programs.)
-- Looping constructs. (Command Center wants 10 Steel Plates? Set up a CM to deliver exactly 10 then stop.)
After being away for awhile, I got in to a discussion with someone on another game, and this game was mentioned. So I reloaded it to see what, if anything, the developers have done since I last played. I was very happily surprised to see they have done a lot of work on the game, ranging from general tweaks and improvements to adjusting and correcting previously reported issues, to adding user suggested features. Kudos to the developer, and two thumbs up (more if I had more thumbs!)
I tried to jump using the space bar. However, it gave no indication of a jump, nor did it succeed in moving over the fence. What I found does work, but only sometimes, if by "looking" up at the sky, it will sometimes "climb" over the fence.
Likewise, I had to look at an upward angle to "lift" the selected item high enough to place it on/in a workshop (anvil, sawmill, smelter, cauldron).
To get a potion, I had take a step or two back and then look lower to "dip" the vial in it, which is difficult to aim because I have to halfway look at he sky to lift the item high enough to place it in the cauldron, and then _hope_ I aimed well enough to go in.
The sawmill took awhile to figure that the "0.2 <= (number) <= 0.7" meant the sawmill will only cut logs with those min/max sizes. It is also very difficult to cut the logs within those size limits due to the design of the UI. Perhaps some tick marks could be added to indicate about were to cut.
The anvil also took awhile to figure out: I needed _all_ the parts on the anvil, then hit the anvil once to combine and craft them. At the very least, give an indication that more resources are needed (it does not need to say which, only that something is missing).
The smelter was the first and easiest to figure out: I was going to try clicking on it while holding a "gem" (how a gem becomes an iron ingot is beyond me), but as soon as I was close enough to click, it also happened to be the input region and automatically took the gem and produced an ingot.
Another issue is with drinking potions: I have to click and hold the right mouse button for several seconds until it finally "drinks".
My suggestion would be that when "holding" an item, it appears the same way and place a tool would appear when equipped. Then, use/place/drop the item by clicking while the targeting dot indicates what/where to use/place/drop it. Simply clicking on the basket (box) could put the item inside it. Clicking the anvil could add the item on top. Clicking the sawmill/smelter/cauldron could do the logical thing while holding the correct item.
--
One final note: While writing this, I closed and restarted the game to get those "0.2" and "0.7" numbers. This time, the space key worked to jump and I did not have to look as high in to the sky to 'lift" an item off the ground. But I did find another issue: When I grabbed a cut down tree, the game suddenly made the tree disappear entirely and made me "run" backwards at "Warp Factor 10" -- so fast it sent me off the edge to drown and die in the water before I could react.
For me, at least, the main purpose of pausing the videos is so I could read the subtitles/text, maybe take notes, and give me a moment to "digest" the content. It had not even crossed my mind to try switching to the main game and back -- I never left the video screen. Perhaps you can do both pause and fast forward for now? Just alert the user that if they leave he video while paused, it will reset.
I am wondering now if you can auto-FF to a specific point in the video (and of course, obtain the current position), which you could save in global. That would make it possible to pause, go to main game, come back, and jump back to the saved position. It would also make it possible in a future release to create multiple "bookmarks" players could jump to while learning how to do things. All this, of course, depends on the capabilities of the video library you are using. (I have no experience with A/V playback libraries--my A/V disabilities are too limiting to bother learning.)
Regarding power switches, perhaps do both? Allow direct manual control, but also allow circuit control. Just like in MineCraft, you can manually open most doors, as well as wire RedStone circuits to control their state. Much if this has to do with my original hopes on what this game was, which I will explain...
Originally, I was looking and hoping for a game similar to MineCraft in some ways, yet different in others. Other influences include Colobot and Widelands, and the Itch.io games Autonauts, BaseCraft, Craftomation 101, Mindustry, Villager, and others. The basic idea is that you start with very little and have to build up your abilities: Manual mining the first resources in which to build more machines to mine/produce more advanced machines. Automation is something of a goal: As you build more advanced machines, some of them are useful to create automated lines and circuitry to control automation. Thus, the progression/goal starts with manual resource gather and basic crafting, to build up to a point it becomes automated and self-sustaining.
The rocket can arrive at regular intervals and start by needing basic items (i.e. "1000x copper")... Harder "modes" could add limits, such as "1000x copper, within 10 days. 3 failures to delivery in time == game over". The "needs" get more advanced as you complete them: Complete "1000x copper", and next time they want "1000x copper and 500x copper plates", and so on. This becomes the "push" for the player to build up more advanced machines and production lines, eventually automating them as well.
This also means that full automation becomes a goal, rather than something the player can/will do from the start. It also becomes a reason and incentive to build a"rocket landing pad", and "rewards" for completed goals: "Build a rocket pad, deliver 1000x copper, and get rewarded with an extra extractor, conduit, and solar panel, delivered by the next rocket".
Of course, keep the current game as a "sandbox" mode where the player can experiment and try things.
I.M.O., these kind of things are what would make the game fun and profitable, for both players and yourself. You could add Patreon support and eventually a premium Steam version. Even if you never intend the game to become a "for pofit" game, you can keep the price low enough just to cover your development costs and time. You can start thinking of future plans; Additional machines, "quests"/goals, scenarios, maybe even one day allowing user made mods and scenarios (take a look at Battle for Wesnoth's history and development).
A logic block switch may be a bit overkill, since this is not MineCraft. I suggest adding the on/off switch directly to all machines (even transporting machines, power machines/solar cells, etc). However, if making and using a switch logic block wold be easier to implement, it would be an acceptable option.
A pause for the tutorial videos would be useful, as would an overall game pause (maybe automatic pause while in menus). Maybe transcribe the videos, either in-game or on the web somewhere, possibly with screenshots as needed. (I would help with that where I can, but I have no sound... I can only provide the text overlays from the videos.)
Routing does not seem to be something hard to add: You only need to select the machine and tell it where to send the output. Inputs can be be assumed directly by other machines targeting it from their output. (Might consider limited or multiple inputs for this...)
I do like the idea of platforms. Maybe even require them. I.E., build a platform, which will provide a level place to build a machine upon. The top of the platform can be adjusted (probably specific amounts, such as 1/10th (or 1/8th, to simplify the "powers of 2" math) "cell" increments, and the bottom extends automatically until it intercepts the ground. (Likely requiring extra resources if the platform is more than one "cell" above the ground.) This could also work well with loading the rocket for deliveries; Require a "landing pad" and possibly a "loading dock" before items can be loaded and sent up. Manual loading will not require a loading dock, obviously.
1) I tried that, at first. But still two problems: One, a lack of space between machines to visually see how hey become connected (or fail to connect), and Two, landscape is not flat and eventually I can no longer place blocks in a straight line. I had limited success by occasionally moving up one block. Perhaps make a new block that is simply a spacer/aligner (and 'free')?
2) I played with some of that, as well. It works well enough for fully automatic lines. But lack of an ability to manually shut a machine off for other purposes is still a problem. And makes little sense. Imagine a light in your house that once placed will turn on at dusk and cannot be turned off until dawn. You have to remove it to stop it. Eventually, you will get frustrated doing that and just go buy a light with an on/off switch from some other company. (In truth, is is the main reason I stopped even trying this game. too frustrating, for no reason.)
3) That is indeeed helpful. Trying now to just figure out which video is which.
Several issues will need to addressed to make this a good game.
1. Give text transcripts of the help/tutorials -- Not everyone can enjoy the wonders of audio/visual. Whether this is due to system hardware, or disabilities. I am both audio and visually impaired, so never set up my system for audio. And the videos roll by so fast I cannot follow them by looking along. And there is no pause for the videos.. A text can be read at my own pace, and I can use a screen magnifier to read it.
2. The game has no pause and never pauses, not even in the menus. For a game such as this which can span hours or days, some kind of pause/resume feature is essential.
3. The controls lack real control. It is very difficult to place blocks where I want them.I constantly have to use the Y, V, and R keys to place things. And much of the time, it sill misplaces and I have to remove and place it again. Some kind of "align to grid" option would be nice, allowing me to place entire production lines down in a straight line horizontally and vertically (not a major issue, but for "neat freaks" like me....).
4. User has very little control over how blocks "connect", For example: I place an extractor, a conduit, a smelter, another conduit, and storage. Then I place solar panels to power things. Depending on what other blocks are nearby, and which order hey were placed, the items and power routes may not work out as desired. This gets worse as I 'F' to remove and move things, since the routes try to re-route again and end up at times sending things in undesired directions. I am sure there is some logic (such as first block in memory/linked list?), but I may as well flip a coin as the memory is allocated/de-allocated/moved around.
Ideally, routing should be under user control. Add an ability to (re-)assign inputs and outputs. This would also eliminate the need to adjust how far conduits transfer items/power; The only requirement is that they need to be within the maximum range when (re-)assigning them (and/or the need to "reboot" them, which still gives no real control over the automatic assigning).
6. The ability to turn machines/blocks on and off would be useful. I could stop an extractor and production line, remove/replace the production line it is feeding, and start it again -- without having "junk" items from the previous line continue to fill storages, or need to remove solar cells to make it stop.
I do not know if it makes much difference, but I have noticed something else. I have been running a continuous ICMP ping to 8.8.8.8 in shell terminal, and when I have bad problems with the game accepting and processing my clicks, I also notice no ping reply in the terminal. Could it be that the game tried to send an update to the server and is awaiting a reply, but the packet(s) to or from the server had been dropped/lost, so the game gets stuck in a loop waiting for something that will never come?
Some questions:
1) What causes the bags with items in them to drop? It seems sometimes they drop when the current block is mined to 0%.
2) When those items drop, do they stay until collected or do they eventually time out and disappear? (The wording of some researches seem to indicate they time out unless you have researched ways to make they stay longer/infinite time?)
3) Same two questions when ... not certain what to call them, but those "chunks" of "bonus" ore that drop. Those seem to drop at certain "milestone" percentages, but I have not watched close enough to see which percentages.
4) The paper doll for my hero shows multiple equipment, including an additional slot for a second hand weapon. How do I obtain those?
5) I have only "refined" twice, since there is very little in ways of information or guides on how those mechanics work. Could you give some additional information on that?
6) Could you explain what some of the terms, abbreviations, and acronyms mean? Like OpS, OpC, etc? (I can figure out some, but no all.)
Ideally, post these kinds of information in the game description for all new players to see, not just as an answer to my post.
Desktop PC with Debian Linux OS, Firefox as my browser. I.E., I am not playing via the mobile app normally. I did add the mobile app (Android) because fishing is a little less troublesome on mobile, but I still mostly play via browser. The mobile app does not seem to be affected by the same issues for me. Likewise, starting Firefox in "safe mode" (all extensions disabled) does not help.
I have noticed more often that lately, as another example, I can "Harvest All Crops", and it will first show the activity spinner, and then... It does nothing obvious for several seconds. If I wait a little longer, it will eventually show the activity spinner again and complete the action. On occasion, it will do it all very quickly without pause, but that is less common than the pause.
I also recently noticed that sometimes, when switching to my Farm sub-screen, it takes a few moments to even "activate" the "Harvest All" button (or he Plant All, or even let me click on a crop to see how long before it is ready).
I can try to see if I can make a video of one of my play sessions to show you, but that may take awhile as I do not have anything installed currently for doing so.
It is due to some of the game logic. The Service Drones are chasing each other trying to service each other, and the inactive drones do not try to service them because they see another drone is already trying to. Elevators also cause some issues, presumably because the logic only checks if an elevator is there and not whether it is going up or down. This happens more often when a drone is trying to get to a site one level up, but there is an elevator going down on the level below it -- the drone "thinks" it can use the elevator to go up to the site, but it does not.
Since Doooooom made the source available, I plan to see if I can "fix" it and submit a patch.
No. The spinner setting is on. It behaves as described in settings -- It shows up when changing menus. But it does _not_ show up when clicking many other links or buttons. One example is when petting chickens/cows. (Also, sometimes I have to move my pointer for a second off the hotspot, and sometimes even completely outsider my browser window, then back.) When I click, there is a short delay with no feedback before it displays "You petted your ...." message. At that point, it _does_ show the loading spinner because it is moving back to the previous menu to select another chicken/cow. But the delay I am pointing out is the first delay, _before_ getting the "You petted ..." message.
Other examples including adjusting my buy/sell/craft amounts. Clicking the up/down spinners works as expected, but clicking the [+] and [-] buttons sometimes does not "register". Same for the action button (the one that displays the cost in Silver), or the the [Lock] button to lock/unlock. (Side note on that one: Sometimes, when viewing the library sub-page on an item, locking an item from there and then using the [< Back] link does not update the locked status.) What I am hoping for is some kind of visual cue/feedback that the button/link was registered as clicked, but is still being processed. Something like the "Lock" icon turning from green to yellow, and finally to red once it has completed updating.
One more example is the "Continue ..." link/button while exploring. Sometimes, there is a delay after clicking it before it displays the results. I am often uncertain during the delay if it actually detected/registered my click, or if I need to do the whole "move my pointer away and then back again" routine before trying again. Some of this is likely beyond your control, such as delays while the browser updates the DOM, but some of it, I presume, is caused by the UI delay in sending a XHR request and waiting for the server response. Simply changing the background color to a dark grey immediately on click even before it tries to do the XHR send/recv cycle, then back to white (or black, since I use the Dark theme) once the server responds, would give me the feedback I am looking for.
Related to exploring in a different way... I recently had another idea: make it so players do not need to reset their effectiveness (at least only rarely), by adding an amount option to "Continue ...", such as "Continue X times ...", where X can be adjusted from 1 to their max effectiveness. (It might even display zero when they have no more stamina.)
Right now, I have been working on a spreadsheet to aid me in crafting and selling: It will let me know how many I should (or not!) use/craft/sell to maintain my target inventory levels -- Not only of the item currently being considered, but also of the components used to craft. Something like my previous idea of using lock counts instead of boolean "all or nothing" locking, would greatly facilitate that. As well as helping manage needed goods for the quest lines, dailies, etc.
Now that I have livestock, there is another frustration (it exists in many areas, not just livestock, but livestock makes it more pronounced): Delays between clicking something and success/failure messages make it very hard to tell if I successfully clicked or not.
I am guessing that the delay is caused by the JS sending the data to the server and waiting for the response. But what you might do while it is waiting is give immediate feedback that it registered the click and is waiting for the server response. Something such as changing the color of the button/lin, so the player knows it is processing. This would also hopefully help reduce server load from players who get lagged and "spam click" things until they get feedback, thus causing more load and lag.
Another thought I had is what if you opened the API to let people create a game client (for PC/Mac/Linux, since I assume the iOS/Android app makes it not useful on mobile)? There are several ways to handle detection and throttling of bad behaving clients (or bots), including certificate signing of "acceptable" clients and player accounts. Decades ago, the MUD I coded for did something like this with great success, if you are interested in how it might work.
For the demo, at least, you could make it configurable. For the game, you can do the same: Let the player select some options/states to make it easier/harder. I considered the idea because I found it was much too easy to evade the AI by running around more than one corner as quickly as I could. But if the AI tried to check a little further, it would have had a 50% chance of finding me again for two corners, 33 1/3 % for three corners, etc.
Edit to add: A fuller AI could even be made harder by using learning and predictive algorithms. So for a harder stealth type game, it can learn things like the player is more likely to try using a corner that is closer and gives them more space/corners to try hiding again.
Interesting example. I have not looked at the code yet... I would suggest, however, that you add more states: Instead of going immediately back to it's patrol route upon losing the target (player), it performs a small search algorithm to try to find them again. "Small" meaning something simple, such as go to each position that would extend line of sight beyond the obstacle blocking it -- but only the positions visible at the time/position it lost the player. (I.E., a hunt and seek algorithm, but only one iteration before it "gives up".)
Perhaps even add a control to set how many iterations it will attempt -- with an infinite number effectively making it roam the entire playing field rying to find and chase the player again.
It would be interesting to see how the "AI" handles these modifications.
Another suggestion:
Since even boolean values in JS are still numeric, instead of "locking" items from selling at the market, allow locking "Count X" items (with 0 meaning "none", -1 meaning "all", and possibly a negative number less than -1 meaning meaning "All but the last N"). This way, players can do things like "Sell all but 10 locked items". It would also be handy to be able to sell multiple, such as "Sell 10 of everything".
Suggestion:
Make it so that missed combos do not reset the combo count completely. Instead, have it deduct 2, 3, 4, 5, or even a percentage such as 1%, 5%, or 10%. (Or have a research that does something like this.)
As it is, I have to invest extra time and effort to more precisely ensure my pointer is correctly positioned. I can imagine that players with touch screens (i.e., on phones) get very frustrated with how imprecise tapping on the screen can be. It would also reduce frustration from mis-clicks and jitter (the very act of clicking makes my pointer sometimes move a small amount).
Now that I have played for awhile...
Farming skill and crafting skill advancement seems well balanced: I'm about level 10 in each.
Exploration skill, however seems overpowered: I'm already at level 25. In addition, the drop rates could use some improvement, a least for "common" items.
Fishing skill levels are okay in balance (I am about level 12 there), but the game mechanics are very difficult...
First, I have to be quick to move my pointer and click on a fish; But the click sometimes does not register, is delayed in registering, and/or it ends up being a "click and drag" instead of just a click. This is more of a problem outside your control, depending on the both the OS load and browser load (All the JS running, especially with multiple pages open, may slow it down a bit).
Second, I have to quickly move my pointer to the second area and click on the marker moving back and forth. This has the same problems as above -- Clicks being missed or not registering and triggering until after the marker has zoomed beyond that point. Worse, if the first step turned in to "click and drag", it would drag the fish on top the marker, and before I could click to release and then click again to hit the marker, it is too late. The marker itself sometimes moves too fast, and/or does not stay on screen long enough to "correct" these issues and properly hit it.
I would suggest the first part lasts a little longer to give the player a chance to try re-clicking on the fish. Eliminate the second part entirely, or make it appear closer to where the fish is/was. Another option is simply "click rapidly enough", so that the "catch" depends on how rapidly the player can click up to ten times (and make it so *too rapid*, such as trying to use an auto-clicker, get penalized...) There are many variations based on the same concept, of course.
Another option wold be (if browsers can do it), click and hold to try catching the fish, and releasing when the marker is near the end area. (And going back towards the start if the player holds too long.)
Most everything else seems pretty well balanced and fun.
Agreed, on all points. I keep getting stuck in the same trap: I have two spare points of power, and two spare points of processing. Generating power (with my current systems and upgrades) needs two points of processing, so if I do that, it's game over due to 0 processing. Likewise, processing (again, with my current systems and upgrades) requires 2 points of power, which results in game over from 0 power. I also need to resist the urge to enable the autos -- they end up doing one or the other, and it is game over.
Ideally, there should be a small delay before game over: I should be able to generate power from processing, and quickly use some of that power to increase processing back above 0. It does not make sense that the ship gets destroyed immediately because there is no material immediately on hand to generate more power when the power consumption of all systems is currently near "100%".
I would do the math to find what I am guessing is the only possible path to success (do A, then B, then C, ....), but without knowing how "A" affects resource use, I am left with only making a random guess, and hoping it is not game over. The game becomes less a game of skill, and more a game of chance: Roll the dice and if it's "snake eyes", you lose.
TBH, I give up. Trying to download from Mega caused my FireFox RAM and CPU to skyrocket, to the point I could not even switch to an admin console and kill it. I had o pull out the power cord and lose everything in my current login session. Upon plugging back in and powering up, Mega is now telling me I have exceeded my monthly quota and have to purchase additional download bandwidth to restart the download.
Given this problem and knowing the game may not even execute on Linux, it is just not worth the effort.
I really do advocate you upload to archive.org. It is free, for you and your end users. It is very fault tolerant, as the webserver supports resuming failed and problem transfers -- which means it also supports use of download managers which can keep (re)trying the download until it completes. It generates .torrent files for users to download via torrent downloaders. And, it may not mean much to you, but it creates an archived "history" of anything ever published without any need for you to provide the resources (servers, disk space, bandwidth, etc). This allows someone in a year/five years/ten years/... from now to download it and give it a try.
Like you, I do not like large text dumps "in-game" -- when they are forced upon the player (such as in a demo/tutorial mode). On the other hand, however, I recommend making it _available_ to the player in-game. Do something like the way FreeCiv presents much of the information in it's "Civ-opedia", that the player can find, read, and reference only as their needs require.
Unfortunately, he problem persists with my second download attempt. Size and chucksums (CRC32, MD6 and SHA256) between the two downloads are identical. This suggests that the download succeeded...
It may be the zip file size that is the issue. I am running up-to-date 7-zip libraries and Ark as my GUI archive manager. I do not have my own Windows machine to play with, but I have often heard other people have issues with very large zip files created under Windows 10, and heard it is due to some added non-standard "features", which are not (currently) compatible with Linux or even pre-Win 10. Would you consider either packaging it as a .7z, .tar.gz, or even a .tar.bz2 or .tar.xz? Other options include breaking it down in to multiple zip files no larger than 2GiB each.
Regarding platform porting, I really recommend you make that a priority early on. The longer you put it off, the more code you will have to refactor by doing it later -- or end up not doing it at all because of the amount of work you will need to do later. DOS and Windows are both examples of where this has happened. Microsoft coders created a "solution" to an issue, but by the time they realized the solution was making the problem worse, too much code and documentation relied on the broken solution for them to try to "start over and do it right this time."
I also understand the issue with Windows-only hardware and drivers. My WiFi adapter has to load the NDIS kernel drivers, which in turn load and call the code from the driver binary designed to be run from Windows. Your best bet is to target the "lowest common denominator" for mainline development, and make anything that uses or needs a higher-end GPU as "bonus feature" for those who can use it.
This would also benefit you as you can more easily create Mac packages, iOS packages, and even an Android APK release. This design is why C/C++ are still such strong and solid programming languages even though they are 40+ years old. Porting them to a new platform is as simple as creating the base instruction set to port the compiler over, then start compiling. (Modern GCC is a little more complex than this, but the base principle has remained unchanged for decades.) Pascal/Object Pascal (a/k/a Delphi) and Java do similar, but they approach it by creating a common "virtual machine" that executes the byte compiled binary image without changes. Various BASIC dialects and JavaScript and somewhat similar, but their method of operation is _interpretation_ instead of _compilation_ -- However, modern techniques such as JIT and pre-compilation make them act very similar these days.
As an aside, Modern Mac's are Linux-based. So you will not have to do a lot of work in that regard. If it works on Linux, the majority of it will work on a Mac. The main differences are mostly non-technical; It is more about the expected UI and file system extensions. For example, Mac users expect a single "system menu" at the top of their screen that is shared by all running apps, instead of each one having it's own system menu attached to it's main window. Mac file systems store some additional file attributes and meta-data for each file, such as whether a file is an executable application or a data file, and which application "owns" it.
For the experience, you might try to write some simple TK apps, even the simple and classic "Hello, World!" app. TK is closely related to TCL, but there are also, for example. Python and Perl linkages for TK. And they all are cross-platform, executing on Android, Linux, Mac, and Windows with almost no source code changes. iOS seems to be the exception, due to the way iOS apps are licensed and distributed. But if Apple would license them, there is no reason (that I know of) they should not operate the same on iOS.
I have even seen some "homebrew" systems (Arduino/embeded) and methods (Super Famicom/NES carts, classic "arcade" gaming "cabinets", etc) that do all these things.
Heck, I was just alerted that my coffee pot is now over 4 hours old and cold... 8^O I wired my home coffee maker to 6502 CPU from an otherwise dead Commodore VIC-20 computer, and can control it and check how much fresh coffee is in it with a simple TCL/TK app that sits in my taskbar "tray area", as well an app on my Android phone that runs the same TCL/TK program (via AndroWish).
One final thought... Just about every game release on Itch is "in the same boat" as you. Per the main itch.io home page, "Download the latest *INDIE* games" (emphasis and caps are mine). Many here are low budget, single developer hobbyist types who started with nothing but an idea of a game they want to write and release. The way I see it, this is a prime place to get started and learn the real art of programming (in between graduating college and getting hired by or starting your own development company). Make the best of it!