Nav: (Display/Hide) - Home - About the Author / this page

Current Projects: Americana Engine (Game Engine Development)

Saturday, October 31, 2015

Apple Hill Farms

During Halloween, I decided to head over to Apple Hill, mainly to explore, get an Apple Pie, and possibly visit the Chestnut Festival at Smokey Ridge. Despite it being listed today (according to the Apple Hill 2015 website) they did not seem to have it upon passing by late afternoon, although there were a lot of other things to look at. The farms I visited were the following:

Rainbow Orchards: Sells a variety of stuff, including apples, baked goods, jams, apple cider doughnuts and hard cider. Has outdoor seating and music performances on certain days. The size of the doughnut is a bit smaller than a regular doughnut. There is a BBQ out there as well; they sell sandwiches and hotdogs ranging from $5-9. The apple pies here are moderately expensive.

There is a price listing here.

Kids Inc: Sells large apple pies, some apples (they have samples available), and a few vegetables. Contains several vendors and a giant corn maze / pumpkin patch. Menu is located here, with a few pies raised by 50 cents. There is also a grand view of the apple fields from the hillside.

Abel's Apple Acres: Sells the largest variety of apple baked goods that I've seen so far, as well as candies and gifts. There are at least three places to buy food from, and there's attractions and vendors outside. Apple pies are relatively inexpensive here (at around $11-12 per pie, both baked and frozen).

Tip: Bring a map and figure out your route prior to heading over. It's easy to get lost out here, even with a GPS, and some of the signs for these apple farms are hard to see from a distance.

Wednesday, October 14, 2015

Americana Engine: Redesign

Minor (but important) differences in the script syntax from Beta 3 -> 5, especially for branching statements.

A number of changes have been made to the underlying code as well as scripting format in order to both improve readability and performance. Compiled maps from Engine Beta 3 or below* may not be playable since a lot of crucial triggers will not work properly, making Beta 4 the last official version for backwards compatibility. For more information on what may appear in Beta 5, see the changelog.

Brief list of changes:

  • All resources now load outside triggers instead of as actions.
  • Strings are now compressed for standalone maps
  • Map variables now include strings as well
  • Variable pointers are used at the beginning of a variable instead of extra values on an action
  • Jump Actions now made into If-Then statements by default
  • Locations were reworked
  • A lot of internal code was refactored


  • Faster map reloads
  • New GUI for terrain editing

Development Comments:

Loading resources were originally placed in triggers since there was originally enough of them would cause lag if they were placed at the beginning. After some consideration, not only does sounds and resources loaded in the middle of a map cause a few inconsistencies, they can also break some parts of a map if a trigger that loaded them happened to be skipped over for some reason, and another trigger loaded them instead. Additionally, loading in the middle will also lag for the time the texture or sound loads in realtime, and is more significant if the file being loaded is large. It's not going to make a difference in compiled maps, since all of the data is loaded at the beginning.

To centralize the location where all resources will be loaded, all resource calls are now outside triggers, and there should now be no question as to where these statements can be placed and if they will run or not.

Jump Actions were implemented because of the way the script was interpreted; You needed to get to a line, and there's a trigger to do so. Originally the jump statement required a number and optionally direction (up or down). During early stages of beta testing, users had difficulty with figuring out where these statements were jumping to, and most of the time was spent fixing issues and having to readjust the code every time a line was added in the middle. I also did not want to promote bad programming practices, and this one did it with spaghetti code. The problem was resolved with conditional statements instead. Jump to line is still there, just using labels now.

A bunch of code was refactored (and placed into separate source files) since it became progressively harder to add new features, and even more so to maintain. Prior versions placed most of the map rendering and editing functions in a single cpp file, and class definitions in several other header files. It was nearly impossible to split the main cpp file up as class methods pulled data from global variables. In larger teams, the same cpp file was being edited, which can get extremely cumbersome as all revisions from each commit had to be merged and reviewed so that it didn't cause conflicts and/or errors in the source file, as well as other classes referencing it.

The Battle Simulator in previous game engine releases is not compatible with the current engine version and will not be included in release builds, however source code for the map will be available as a separate download for anyone interested in updating it.

Sunday, September 6, 2015

Ghirardelli Chocolate Factory Outlet

Running out of Ghirardelli chocolates, I went to get some more in other locations. After spotting this factory outlet from riding the BART some time ago, I went to take a closer look, considering that I was heading in that direction.

Aside from the Pick and Mix display that I saw in Lathrop (as well as in SF) there were also a number of new items and a large amount of chocolates in cases (sold as stand up boxes) for a considerable discount.

While trying to figure out what gives me the best deals, someone asked me for help on what to buy (for one of his events) while saving as much money as possible. I'm also trying to save as much as I can since I buy in bulk (several dozen squares at a time). Which is what brought me to...

Calculations and Best Deals

The prices are calculated for 10 regular squares, with the following notes:

  • This is an incomplete list. Prices were last checked on Sept 2015 and do not include tax. Unless stated otherwise, the prices below refer to general squares sold in Livermore, San Leandro, and Lathrop (the last two which are Factory Outlets).
  • Take Out Boxes in SF are not included because I did not actually check how many could be stuffed in there.
  • Twilight Delight and 60% Cocoa in stand up bags contain 13 of them instead of the standard 10 for the same price.
  • Variety bags and seasonal squares were not checked.
  • The 12x Bag Discount was intended to be bought as a case.
  • 15% discount (on receipts) was used on anything it could be applied on (in brackets).
  • Costco's Assortment is Milk & Creamy Almond, Dark & mint, Milk & Caramel, and Dark & Sea Salt Caramel.

That said, the best option for cost effectiveness would simply be to get them from an outlet store, and in bulk. If you're not in California, then from Costco if you favor caramel chocolates (though it is seasonal), and Target / a discount grocery store otherwise.

Type Minimum Quantity Total Price Price for 10
Chocolate Heaven - Stand up Bag 10 8.95 8.95
San Francisco - Intense Dark Gift Box 16 / 32 12.95 / 22.00 6.88 / 8.09
San Francisco - Filled Cable Car 45 25.00 [21.25] 5.56 [4.72]
San Francisco Chocolate - 1 Bag 33 16.95 [14.41] 5.13 [4.37]
San Francisco - Pick and Mix 15-22 19.90 / lb [16.91] 4.66-6.59 [3.84-5.64]
Alcatraz Market 10 4.99 4.99
San Francisco Chocolate - 3x Bag 99 42.00 4.24
CVS / Safeway - Stand up Bag 10-13 5.19 3.99-5.19 [2.68-3.49]
Online Store - Case Pack 430 / 530 170.00 / 190.00 3.95 / 3.58
80 Count Squares Bag - Overstock 80 27.95 [23.75] 3.49 [2.96]
Target - Stand up Bag 10-13 4.49 3.45-4.49
Pick and Mix 15-22 12.00 / lb [10.20] 2.72-4.00 [2.31-3.40]
Factory Outlet - Filled Cable Car 45 17.00 [14.45] 2.65 [2.25]
Costco - 80 Count Squares Bag 80 19.99 2.50
Costco - 50 pack (Assorted or Caramel) 50 11.69 2.34
80 Count Squares Bag - Overstock (x3) 240 55.90 2.32
Factory Outlet - Stand Up Bag 10-13 2.98 2.29-2.98
80 Count Squares Bag - Overstock (x5) 400 83.85 2.09
Factory Outlet - 5x Stand Up Bag 50-65 13.30 2.04-2.66
Factory Outlet - 12x Stand Up Bag 120-156 28.80 1.84-2.40

Friday, August 7, 2015

Helixteus 2: Guide + Speed Playthrough

A year ago, there was Helixteus, which I reviewed. Now there's a sequel, and the concept of multiple universes, as well as a new building (Central Business District, or CBD) which reduces adjacent building costs and Auto-Collect, the latter which makes a quick Triangulum Probe run doable (which allows you to spawn another universe, essentially a New Game with bonuses). Since it requires very little combat (I was able to finish this without leaving the galaxy) I expect this mechanic to get nerfed back soon.

I do not attempt to takeover all of the planets that can be seen in a supercluster because it is unnecessary and makes the game lag too much in the very late stages of the game.

Need to Know Shortcuts:

  • D = Select all tiles of that building type (or empty ground)
  • S = Click an area to start a square selection, click on another tile to end it. If you have an item selected when you are doing this, it will apply that to each building in your selection, provided you have enough of them.
  • E = Upgrade units. If you have selected multiple units, you can mass upgrade. Can mass upgrade one unit if you rectangle select only one (selection is brighter than usual)
  • Q = Inventory
  • Shift + C = Sell all ore
  • Del - Remove Buildings by clicking without confirmation

Need to Know Concepts:

  • A solar system (when you zoom out towards galaxy view) is guaranteed to spawn on top your first Solar System when a new game is started, which means that travel time there is equivalent to moving between planets in your starting system. If you leave before you occupy it your actual system will show up correctly the next time the game is loaded and colonizing it early will be much harder, especially if your starting solar system glitches and you can't fly to any other planet there. The above run relies on using this bug.
  • The price of minerals scales to a rate of your Level^(Level/6.1). If this value is less than 1/32 selling price the latter is used instead. Early game you can buy minerals with ore and sell them at a higher price than selling ore directly, until you reach around 100k, then gems will sell for better until boosts take over.
  • At around lvl 25+ you need to focus on figuring out ways to get enough storage that you can actually buy Quillite / Kyrium needed to build those end probes. Best way would be to stack Lv10 CBD with Lv1->25+ Ore Tanks (upgrading in bulk gives you less XP than one lvl at a time), combined with cost decrease research. Of course you can always mine them.
  • Overclock Boost: It existed in the last game and it's more useful here. You get a structure building, then you overclock it, then you speed it up to completion. The longer the timer the better the results. The Science Lab has no cap, but the Ore Mine / Power Plant fills it up to its storage cap... unless you have a decent CBD nearby, in which case a percentage of that huge boost will go straight into your total ore storage cap instead, it can be very useful in topping your stores many times over. (A 34-1-8 ore mine, which costs 144B to create, can be boosted x10 and gives 1.5T worth of ore before the CBD is factored.)
    • The additional resources gained from overclocking is only limited to the duration it has, so it's more beneficial to alternate between placing down speedups and overclocks of similar duration. In the above case (where the upgrade timer was 6d 6h), using 5 32hr speedup + 10x overclock instead of a 168 hr speedup will yield 7.4T from that mine alone.

Other Notes or Issues:

  • For performance, 15 tiles a tick, refresh rate 1000ms. If you are approaching larger planets, then 3000ms.
  • You can cheese the final boss by using four Supernovals on it, killing him instantly from 100%, before you should be able to. You'll skip several minigames that way but that's to be expected.
  • There is no retreat in battles. If you attempt to do so with the equal key, you'll restart the battle, and maybe freeze the game if you lost a ship that battle. Not that reloading makes a difference since you get your ships back either way, but still.
  • New universes may spawn without a single supercluster in the Universe menu, at least until you launch a few probes. This may be a side effect of fixing the boss universe bug.
  • The 20x boost on a planet (and 50x boost everywhere) gives you a boost timer but doesn't do anything. It's a good thing we don't need them since we have much cheaper alts available.
  • Speedup VIII (which costs 65T and a compressed diamond) will give you a huge amount of science points if you have something under construction - the more buildings the higher the bonus. Considering that some Lv10 techs can cost > 150P science points doing this might be necessary.
  • The battle screen enemy bar may glitch when overkilling enemies if the stat difference is high enough (A Lv68 T2 Spectre, which has 112M attack, vs a T2 Helixteus of similar level, which has 2000), and enemies will fail to disappear which will cause the wave counter to malfunction.
  • After a battle the weapon mastery and XP of the first ship gets further multiplied by the universe bonus multiplier, even though it's not listed. If you cycle ships the on the victory screen you can get that result multiplied over and over again.
  • If the XP to next level for any ship goes over 4.2 billion (which is around lvl 36 on Universe 10) the counter will roll over and can cause a ship to level up indefinitely, which is quite easy to do in later universes. You will need to close the tab and reload the game; it won't give you the cash and can't use those affected ships anymore, but you get to join the 'Highest Ship level' high score board if the game got saved and you happen to be logged in.
  • When loading a save after entering a different universe (when you have several mapped out), there's a good chance that it will black screen. It's unknown what causes this, but here's a savefile that black screens after entering a new universe, and then reloading.

Quick Guide

(As of v 1.3.4)

  • Starting Out (Before Lv5):
    • We skip the tutorial
    • Buy 15 Coal with your starting ore and sell immediately for 450 (an improvement over 75 cash from directly selling)
    • 2 Ore Tanks
    • Shipyard
    • 4 ships
    • At least 300 coal
    • Enough Mines that you don't hit lv5 yet.
  • Before Lv10:
    • Take over Solar System, and Send ships to Solar System 1 (Must be done during the same session to make it no energy cost)
    • Recommended build: Ore Tanks 1 planet, Ore Mines all other planets, 2nd solar system: Ore tanks 1 planet, rest Power Plant
    • Once over 100k and Material Value as far as you can get it, level all mines Gem Finding Luck to lv2 and Energy Ball Power to Lv7
  • Before Lv20:
    • CBDs on center of Mines and leveled decently (> 50%).
    • Science Lab somewhere, Lv to 7, use 4x boost to get a head start. Don't go past Building Science yet. When you get the money to reach new levels, start from a fresh Science Lab.
    • Recommended build: Ore Tanks 1 planet, Ore Mines all other planets, 2nd solar system: Ore tanks 1 planet, rest Power Plant
    • Once over 100k and Material Value as far as you can get it, level all mines Gem Finding Luck to lv2 and Energy Ball Power to Lv7
    • Figure out a balance between Ore Tank caps (at least 100k) and what combination of Mine Level needed to top your tank storage with overclock + speedup when you boost Gem Find to 6, while still making a profit. Use excess profits to upgrade your tanks. Repeat.
    • T2 Ships and get additional planets as needed.
  • Universes 2-14:
    • Incrementing the Master Level requires leveling your universes. The master level increases the universe bonus effect, which improves the stats of everything. This also appears to have an exponential effect over the money given from defeating enemies, though ore is something different.
    • The same steps above apply, though it gets harder to buy coal with ore and sell for a decent profit since the level jumps are higher.
    • You can take over nearby galaxies with T2/T3 ships in order to jumpstart the buildup process; doing these battles are actually more feasible since your starting ship stats increase as well. You'll want to prioritize building some more power plants to get those energy balls needed for those trips.
    • Science Lab can be built to get RP, but you might want to hold up on the Build Cost Reduction for later as the first upgrade actually makes the building costs / time more expensive.
  • Universes 15-29:
    • At this point 15-20 minutes per universe is doable. Green stars appear a lot more often.
    • You can't really use the selling technique anymore since the first building you put down will jump your XP to at least Lv5. Start with a Mine, and save enough to get a mining pick and start harvesting ore, which can then be sold for cash. Mining Picks are considerably faster at this point.
    • Starting enemies can be brutal, especially when your nearest solar system has rare and/or multiple stars. Start with T2 ships and train them in your starting system, and aim for systems which don't have T6-7 enemies. Use the profits to build T3 ships. Don't upgrade the shipyard past what you need since it makes buying ores harder. You can get max level weapon mastery after a few battles.
    • Up stats 75% Atk/25% Acc or so on a ship. You need the accuracy to not miss any shots, and enough ATK that your defeat them in one turn.
    • Watch your XP on your first ship, if it gets too high it freezes the game. There's some trial and error but the safe spot is 40-50G total XP per ship after factoring in the universe multiplier so go for lower XP battles.
    • You should have enough ore to buy a quillite and kyrium.
    • It is not necessary to get Science points but if you need it you can get Tier 8 Speedups and get more than enough SP from using it.
    • When you get over 300T and the necessary energy upgrades, Build a Triangulum Probe and get out of there.
  • Universes 30+:
    • The standard Mine/Pickaxe/14 Power Plants/Shipyard applies. Expand to two planets and then start working on the next solar system, prioritize getting energy balls.
    • I use a T1 ship on the first slot and three T3s, 75% Atk/25% Acc.
    • Class Z stars can be generated; they don't show on your stats screen until you have one on your screen. They don't generate as much as you would expect them to with solar panels, but they're good for battle rewards.
    • Very few battles are necessary to get the required 300T to advance, but the real challenge here is the ore needed to upgrade Energy Ball power to acceptable levels. There are few battles available that can be completed and not freeze the game up. If you can get them to 500G/ball, you're ok.
    • If your first ship is nearing its XP limit, build a Shipyard on your last planet and swap out your T1 ship.
    • If you can't get the necessary ore but have cash in the P range, then you can get ore storage up to a value necessary to buy those upgrades. Place and upgrade a CBD nearby first if you also need to buy materials as well.

Friday, July 17, 2015

Bitcoin ATM, Roseville Galleria

After finding out about this machine in an article six months ago, I wanted to see this for myself. I was unable to do so until recently.

I won't be able to use it yet, mainly since I don't have a smartphone at this time, but if I need to return to one, I know where to find it.

Note: At the time this picture was taken (7/17 6:45PM PDT), the price to buy 1 Bitcoin was $319.37, which is a 14% markup compared to the online exchange rates.

Sunday, June 28, 2015

Americana Engine: Beta 4 Updates

My gear setup on Foster when running the battle simulator.

Americana Dawn has since switched over to Unity and is moving right along on their builds; on my side I have focused on engine development since I need my version working as proof of coding and game development experience. The portfolio maps still occur within the same universe, however, and will share the game's continuity, but I'll have to find or make some assets first. I am dedicated to providing a detailed development process, and will include any major changes and commentary behind them.

(In the month since the engine project page was put up, the number of people visiting it was a lot lower than expected. I may have to break the convention of not actively promoting material and reappear on social media sites to get this noticed and get further up search engine rankings, as well as relying on chance that someone relevant will find it.)


The following main features were updated in Engine Beta 4 (Released 7/21/15), emphasizing more on character customization rather than straight-on gameplay:

  • The status page has been slightly retweaked compared to the original concept image on the Kickstarter; tabbed interface will now display inventory items (to equip gear) as well as skills and passives on the character instead of using separate menus
  • Navigation in Status screen now completely functional; See notes below
  • Passives are now displayed when selecting an accessory, and Skills when a weapon is selected.
  • Carrying capacity was moved up to main statistics
  • Caps on maximum inventory greatly increased.
  • Mastery gains readjusted

Simulator Changes

In order to test all of the above features out, The simulator has been expanded to include the following:

  • You can now access the menu and change your gear via the Status Page in between battles. Your inventory contains a large amount of items to setup your characters however you so choose, and to experiment with various combinations and statuses. Around a dozen different weapons, accessories, and consumables are available in the simulator. I do not know how much variety AD has in terms of accessories, but I can tell you that this place has plenty of stuff.
    • libcurl will be used to automatically update the items/skill database for the simulator as needed; this should keep game engine re-downloads to a minimum (at least until a major update occurs) and keeps everyone on the same version level, but overall don't expect any of the weapons here to be fairly balanced at all.
  • Lucille has her own portrait in the menu when available, based off of the concept piece of her. There was no official vertical portrait for Lucille, and she's too far down, so there were two options for this, to recreate it myself, or to find an artist to do this. I picked the former for now, but only as a placeholder. The configuration for non-human type characters hasn't been fully defined yet, so Lucille cannot equip weapons, but can hold 4 accessories and twice as many items.
  • Some new enemies are planned to be made based on those in AD that were still work in progress.
  • The help file has been moved to the Journal in order to explain most concepts.

Other Notes:

Despite this post taking into account updates from July 10th, this post was originally created on June 28 and will be dated as such.

Navigation between tabs are used with left/right keys. (X) on any item in your inventory will transfer it to the character if possible; (X) on any item on your character will send it back to your inventory.

Skills are attached to weapons (along with a limited number of character skills) and what you equip for each character determines what attacks you can use. You can slot up to two (or more) weapons and accessories, so you'll have a variety of skills at your disposal, and you can get more variety over the course of the game. I'm still trying to think of three/four skills unique to each weapon, complete with descriptions and such.

Weight is represented on an item as 'Wg' (using the same abbreviation as in Fallout games, where the idea for this came from) until I can think of an icon for this. It's not related to lbs or volume, they are instead weighted solely for balance purposes in a battle.

Mastery also works a bit differently in this version. You get mastery for weapon types used in battle, and when you level up it increases your stats depending on the weapon, which may allow you to use more advanced skills. The only difference in this game is that at high mastery levels it also gives an overall percent bonus towards those stat(s), so you can either focus towards skill variety or strong stats in one area.

I did not add status effect support in the initial release of this version, as I am currently working on a way to add them as needed instead of hardcoding them in the game engine (as well as Journal support).

Monday, June 22, 2015

California Zephyr

Overview: The California Zephyr is an Amtrak Train that goes from Emeryville all the way the Chicago, passing through scenic places like the Colorado River along the way. I took the route westbound from Omaha to Sacramento, a 45-hour train ride. There were many occasions where I had to transfer stuff from my camera chip over to my laptop as there were too many good views and not enough memory to get all of them.


  • This train is designed to be a leisure ride; make no guarantee on getting to your destination on time. If you're getting onboard a specific stop, text notifications will be extremely helpful, as the time between its intended stop and when the train arrives can be hours apart. (There was a touring group onboard the train I was in that had at least one of their tours in Salt Lake City cancelled). It was fortunate that I didn't take yesterday's train ride or the day afterward, as they were 12 and 7.5 hours late respectively, and would've probably had to stay in Sac somewhere.
  • Some of the delays during this trip were the train cruising along at 25mph in some areas for whatever reason, stopping for other train traffic, and even stopping in the middle of nowhere while the current crew left as they were over their 12 hour operation limit, and waiting for a replacement crew to arrive to continue.
  • The observation room's the best place to look around from both sides of the train. At night, it gets pretty quiet so it's a good place to watch movies and do other work.
  • Bring snacks if you need something to eat; they get expensive if you buy from the cafe, and you'll probably need this on the last day.