Search - My colony 2 script flags

My Colony 2 v0.23.0 introduced the new Flag/Scripting system. This is being implemented primarily to support the in-game tutorial dialogs, but also contains features which will allow it to go well beyond this. This thread gives a basic overview of the system and how mod creators can use it in their own project.

As you might have guessed, the system is comprised of two base components, Flags and Scripts, with each script containing a collection of Actions that the engine can perform. When the player does something to trigger a flag, the engine will look through all of its scripts to determine if one or more of them are triggered by the flag. If it finds any available scripts, it will then run through their actions in sequential order.

Player and Global Flags

There are two types of flags, Player and Global. Player flags apply only to the player who activated them, so that any script they trigger will only impact them. This also means that the flag can be triggered by each player. Global flags apply to the entire game world and can only be triggered once, so that the first player who triggers a global flag will activate it for all. A player flag can only be triggered once per player, and a global flag can only be triggered once per world. The exception to these is if a Clear Flag action is triggered in a script.

A sample use case for a player flag is an in-game tutorial message. Suppose the player builds a refinery and you want to show a message about the refinery once it's built. You wouldn't want that message to show up to everybody, so a player flag here would be appropriate.

A sample use case for a global flag could be a scenario where the first player who builds a specific building gets to unlock a free tech, but only the first person to do so gets it.

Setting Flags

There are currently four main ways to set game flags, although more may be added in the future.

Flags can be set when a player joins the world. There are two places you can set these flags. First is in the World object in the game editor. Any flag specified here will automatically play when the player joins, no matter what their civilization is. You can also set this flag in the Civilization object. Here the flags will be triggered when the player joins the world, if they are using the specified civilization.

Next flags an be set when a new unit is created, and these flags are specified in the Unit object in the game editor. These will also be triggered with any free units the player starts out with at the beginning of the game, so they can also double as a "player joins world" flag.

Moving on, flags can be set when a new structure is built. As you might have guessed, these can be set in the Structure object in the game editor.

Finally, flags can also be set within script actions themselves. Allowing you to chain scripts by having one script call another through flag setting.

Creating Scripts

The scripts section in the game editor is where you create your different scripts and specify their actions. Scripts are made up of three parts, a Reference Name (which is just used to identify the script in the game editor so you don't get them confused), a Trigger Flag (which is the flag used to start the script) and an Actions List.

The Actions List is where all of the... action is. A script can contain how every many actions you deem necessary, and the script will play each action in order, one after the other. There are a handful of action types to choose from, ranging from playing messages to setting/clearing flags to giving things to players, and so on. All of the actions are fairly self explanatory in the game editor.

The Future

I think that the Flags and Scripting feature has a lot of potential for the future of MC2 and its related mods, and I am open to suggestions on how to improve this system going forward. More trigger events and more action types are absolutely on the table, so if you are developing a mod using this system, please let me know here on the forums what you would like to see added.

I was thinking that it might be helpful, along with Flags and Scripts, to also add Variables to the mix, both player and global. So a script could set a name or number to a variable and call on that later on. There could then perhaps be conditional actions, based on those variables. That is just one thought, really the possibilities are endless!

So there it is, that is what is in the scripting system so far. Let me know what you think, what questions you have, and what improvements can be made. This system will only get better and more advanced as time goes on!
2y ago
Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:669:74)
frame-script.js:675 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:675:74)
frame-script.js:669 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:669:74)
frame-script.js:675 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:675:74)
frame-script.js:669 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:669:74)
frame-script.js:675 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:675:74)
frame-script.js:669 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:669:74)
frame-script.js:675 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:675:74)
stats.ape-apps.com/logerror.php:1 Failed to load resource: net::ERR_FAILED
frame-script.js:669 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:669:74)
frame-script.js:675 Uncaught DOMException: Blocked a frame with origin "https://www.apewebapps.com" from accessing a cross-origin frame.
at HTMLDocument.handleVisibilityChange (https://www.apewebapps.com/js/script/1.7.20/frame-script.js:675:74)
DevTools failed to parse SourceMap: https://www.apewebapps.com/lib/midi.js.map
external-launcher-mobfox.php?u=9d7e1305175be1da4c65d13142895d31&w=728&h=90:77 GET https://my.mobfox.com/ad_sdk.js?secure=1&cb=CACHEBUSTER&referrer=REFERRER_URL&width=728&height=90&invh=9d7e1305175be1da4c65d13142895d31&type=banner&imp_secure=1&passback=%3Cscript%3E%0D%0Aparent.mobfoxFailed()%3B%0D%0A%3C%2Fscript%3E net::ERR_ABORTED 404
4y ago
@bastecklein

I have done some test (chrome, web version), at every payday the game will calculate the life expectancy, if is 0, all pop will be gone without trace.

With 16 First Aid Station: life expectancy 213
With 16 Medical clinic: life expectancy 219-225-219
With 16 Large medical clinic:life expectancy 253
With 16 Integrated Medical clinic: life expectancy 266-263-262(x3)
Plus one Sm. Hospital: life expectancy 258
Plus other 2 Sm. Hospital: life expectancy 259 (and 192k pop)

In most of the case the pop won't appear in the Total Deaths, now i have 26k deaths, even if i "kill" over two hundred thousand colonists.

around 80k pop, at payday back to 1-2k (16 medical clinic=96 heal slot=1920 pop heal, right?), and will add 19k at the total deaths.

an other round, 100k pop killed, only 20k added in the total death (total 65k)

an other round, 135k pop, only 19k remain, 60k added in the total death (tot 125k)

Conclusion
Without healthcare i don't have death wave, only populations collapse without any trace (life expectancy: 0), with some health care building i have a positive life expectancy, and i have 1/3-1/4 death with trace, the rest without trace. After a total cover i don't have any more death.

But.. i have notice, every n-time the game check the house and jobs value, filling the high grade first and even leaving some building without any worker. Several players reports attest this behavior just before the payday, and healthcare without worker =deathwave.

script.js:48949 life expectancy: 0
script.js:48949 life expectancy: 0
script.js:48949 life expectancy: 0
script.js:48949 life expectancy: 0
script.js:48949 life expectancy: 213
script.js:48949 life expectancy: 213
script.js:48949 life expectancy: 219
script.js:48949 life expectancy: 225
script.js:48949 life expectancy: 219
script.js:48949 life expectancy: 253
script.js:48949 life expectancy: 266
script.js:48949 life expectancy: 263
script.js:48949 life expectancy: 262
script.js:48949 life expectancy: 262
script.js:48949 life expectancy: 262
script.js:48949 life expectancy: 262
script.js:48949 life expectancy: 262
script.js:48949 life expectancy: 261
script.js:48949 life expectancy: 253
script.js:48949 life expectancy: 254
script.js:48949 life expectancy: 255
script.js:48949 life expectancy: 256
script.js:48949 life expectancy: 257
script.js:48949 life expectancy: 258
script.js:48949 life expectancy: 259
4y ago
Today I am doing another "weekly" version bump for My Colony 2, incrementing the release to v0.9.0. This release cleans a few things up, adds a few things, and lays the groundwork for some sheer epicness that will be on the way very soon. Let's take a look!

In terms of content, I have added the Small Food Silo to the game, for storing food of course.


I have also added @GeneralWadaling 's great Advanced Ore Refinery model into the game.

There have been a lot of fixes and improvements to the settlement resource sharing through Logistics Centers. There were some bugs in the prior release, and they should be ironed out now.

You can now generate Money and Research! I don't have a Gold Mint in the game yet, but I do have a research center, which now functions and produces research. Obviously this means that tech tree capabilities are soon on the way. And if anybody is interested in creating a gold-mint type structure model, I wouldn't be opposed....

Recently, @eSandvich asked about adding linear story type capabilities into the engine. I have thought about this, and am starting to work on a new system that will not only allow for that, but will also handle the in-game tutorial mechanism, as well as other neat things. This is a new event triggers/scripting system, something which was nowhere to be seen in My Colony 1, but could potentially lead to some very interesting scenarios and mods for MC2. I will explain how it works below.

First, if you look in the Game Editor, you will now see that many objects have the ability to set engine flags once they are constructed. The game engine will keep track of flags both for the overall server, and also for the individual player. Flags can be set by various means, but the most obvious ones are by either building something, or joining a game. You will also be able to set a flag by discovering a terrain object.

Next I will be adding Triggers. Triggers are events that are activated by certain conditions, primarily flags. When a player action sets a flag, triggers that were waiting on that flag will activate. When a trigger event activates, it will then call a Script.

A Script will be a set of one or more actions that will take place once an event is triggered. There will be a whole set of actions that can be added to a script, and they will be executed one after the other, in the order specified in the script. The actions can be things like play a certain text message or sound, give the player a reward or a unit, wait for a certain amount of time, set a flag, or do other things. The scripting engine could also accept user inputs. For instance, you could request that the player click on a location on the map, and those coordinates are passed to the next action on the script, which may cause a shuttle to land at that location and deposit colonists.

Anyway, for the base game, the scripting system is going to be primarily used for implementing the in-game tutorial and for possibly implementing the Points of Interest terrains concept that GeneralWadaling came up with a while ago. But I think that the system can ultimately lead to some pretty amazing mod capabilities as well, allowing for the creation of story-driven or objective based games.

Finally, in the Game Editor you will notice that the Civilization object now has a setting for whether or not it is player controllable. I will let you speculate on what upcoming feature is implied by that.

So that's all for this update. MC2 development is going to be ramping up pretty fast now, as I want to put a playable beta on the Google Play store by the end of next month. So keep the feedback coming, and stay tuned for more!

#mycolony2
3y ago
@bastecklein

[Update] 2020.2.13 00:00 GMT 00

Steam Win10X64 Client
===================
OK

Native Win10x64 Client
===================
Not test yet

Chrome Web
===================
OK, but somehow still unstable, maybe is my network issue

Chrome App
===================
OK, BTW, According to my understanding, Chrome App is mostly same as Chrome Web, but the overall stability and performance is much better than Chrome Web version and I still dunno why :P

Firefox Web
===================
Freeze at Login in Server, and a pop-out tell me This web-page slow down the browser, asking me if I what to stop it. Log is as follow.


08:40:31.955 Failed to load ‘https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js’. A ServiceWorker passed a promise to FetchEvent.respondWith() that rejected with ‘TypeError: NetworkError when attempting to fetch resource.’.
08:40:32.554 Loading failed for the <script> with source “https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”. my-colony:210:1
08:40:32.555 Failed to load ‘https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js’. A ServiceWorker passed a promise to FetchEvent.respondWith() that rejected with ‘TypeError: NetworkError when attempting to fetch resource.’.
08:40:33.415 Use of the motion sensor is deprecated. frame-script.js:384:23
08:40:33.415 Web App Core Platform Init: web platform.js:93:17
08:40:33.436 set visibility frame-script.js:4927:17
08:40:33.437 no defered frame-script.js:4940:21
08:40:33.454 DOMException: "Permission denied to add a protocol handler for web+my-colony" frame-script.js:474:33
08:40:33.606 Use of the orientation sensor is deprecated. webappcore.js:29:15
08:40:33.833 register /appworker-351-1.3.0-sw.js webappcore.js:4315:21
08:40:33.841 app worker registered webappcore.js:4318:25
08:40:34.874 got ip: 210.66.73.76 webappcore.js:1398:21
08:40:36.625 Storage access automatically granted for tracker “https://twitter.com” on “https://www.apewebapps.com”. my-colony:265:19
08:40:40.086 Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://localhost:12598/runcheck.html. (Reason: CORS request did not succeed).
2
08:40:40.086 Failed to load ‘https://localhost:12598/runcheck.html’. A ServiceWorker passed a promise to FetchEvent.respondWith() that rejected with ‘TypeError: NetworkError when attempting to fetch resource.’.
08:40:41.201 Storage access automatically granted for tracker “https://twitter.com” on “https://www.apewebapps.com”. my-colony:265:19
08:41:03.490 using pointers webappcore.js:716:21
08:42:20.589 pre-main prep time: 10 ms libtimidity.js:217:15
08:42:22.257 Ape Chat v2.2.1 script.js:21:13
08:42:22.719 The Notification permission may only be requested in a top-level document or same-origin iframe. chat.ape-apps.com
08:42:23.085 registration success script.js:353:25
08:42:23.086
ServiceWorkerRegistration

active: null

installing: null

onupdatefound: null

pushManager: PushManager { }

scope: "https://chat.ape-apps.com/"

updateViaCache: "imports"

waiting: null

<get active()>: function active()

<get installing()>: function installing()

<get waiting()>: function waiting()

<prototype>: ServiceWorkerRegistrationPrototype { update: update(), unregister: unregister(), showNotification: showNotification(), … }
script.js:354:25
08:42:23.085 sw install sw.js:18:13
08:42:23.085 [object ExtendableEvent] sw.js:19:13
08:42:23.086 Opened cache sw.js:24:21
08:42:23.222
{…}

data: {…}
​​
channels: Array(6) [ {…}, {…}, {…}, … ]
​​
current: Object { name: "Showhow", sessiona: "2788494", sessionb: "C47F8D48-5603-3F74-5AA7-CA5C98CB5BAE" }
​​
full: Object { timesIgnored: 0, timesMuted: 0, userLevel: "N", … }
​​
<prototype>: Object { … }

success: true

<prototype>: Object { … }
script.js:712:21
08:42:23.231 autojoin my-colony script.js:1809:25
08:42:24.112 Service worker event waitUntil() was passed a promise that rejected with 'TypeError: Cache got basic response with bad status 206 while trying to add request https://chat.ape-apps.com/pop.mp3'. sw.js:21:10






4y ago
@bastecklein

Ok, i have try to open again the region, and the same error come out.

I have save the colony, and open it in chrome, in the console:

frame-script.js:662

TypeError: Cannot read property 'pp' of undefined
at XMLHttpRequest.onAALoginDataBack [as callbackFunction] (frame-script.js:634)
at XMLHttpRequest.<anonymous> (frame-script.js:1729)


script.js:981

TypeError: Cannot set property 'charter' of undefined
at Object.onServerLoginData (script.js:955)
at webAppCore.wacProxyReturn (webappcore.js:1496)
at XMLHttpRequest.<anonymous> (frame-script.js:1725)


script.js:981

TypeError: Cannot set property 'charter' of undefined
at Object.onServerLoginData (script.js:955)
at webAppCore.wacProxyReturn (webappcore.js:1496)
at XMLHttpRequest.<anonymous> (frame-script.js:1725)
6y ago
Just in time for the weekend (if you are using the PWA at least), the My Colony 2 v0.23.0 update is now available, bringing a lot of goodies that I hope think you are going to love. So what's new in this release? Let's take a look!


To begin with, continuing work from the last two releases of My Colony 2, more structure voxel models have been separated from the data files, further reducing initial game load times, particularly on mobile devices. This should especially help on lower memory devices, as some were crashing from the sheer size of the overall MC2 data file during initial load.

Next up, as I mentioned in another thread, all My Colony 2 game statistics are now being automatically logged to the Coloniae service that @Sobeirannovaocc is maintaining. The My Colony 2 implementation of Coloniae is still in development, but you can find it at the following URL to track it's progression. Check it out, see if you can find your own world statistics, and be sure to give Sobe your feedback!

https://dev.coloniae.space/

In addition, all new colonies in MC2 are now being automatically added to the mc2global Universe, as outlined in this thread. This will be the default global universe for all new MC2 games, and if you want to join it with your existing colony, simply click on the thread I just posted for instructions.

Next up, commenters in the various app stores have long been requesting that MC2 contain some sort of hints or tutorials such as those found in the original My Colony. So I have started to add helpful dialogs to the game at various points.


More exciting than the tutorials though, are the manner in which they have been implemented. Some time ago, there was a request for some scripting capabilities to be added to MC2 that creators could use for different types of mods. I started implementing it by adding some flag properties to units, structures, worlds, and civs, but then forgot about it, until @Luker124 recently reminded me that they would be helpful for a mod he is planning. As a result, you will now see a new Scripting section in the Game Editor.


I will make a more detailed post on scripting at some point, but it basically works like this. Certain entities (units, structures mainly, but also civs and worlds) can set either a Player Flag or a Global Flag when they are built/come into the game. A Player Flag pertains to the player who triggered the event, and a Global Flag pertains to the entire server. When a flag is triggered, the engine looks through all of the available scripts, and then will run any script that is triggered by the trigger flag.

The engine remembers which players have used which flag, so they can only be triggered once, unless a script gives a "clear flag" command. You can see the currently available script actions in the screenshot above. A script may contain one or more actions, and can call subsequent scripts by setting flags itself.

I plan to use this new flag/script feature to implement something suggested by @GeneralWadaling some months ago, whereby you could discover interesting terrains which would then unlock things. My thinking is that you could discover alien artifacts/tech that would then unlock certain structures that were not available otherwise through the tech tree.

The possibilities are vast though, so it will be interesting to see what modders come up with. The scripting framework is still in its infancy, so try it out and let me know what additions or improvements you would like to see. I foresee eventually being able to make a wide variety of different types of mods with this feature, not even limited to colony builder games.

Next up we come to a new addition that everybody has been asking for since MC2 was first made public, and I am talking about the return of the Bulldozer!


There is now a new toolbar above the build options sidebar. Currently it only has a bulldozer, but that will probably be expanded at some point. As in MC1, the bulldozer mode will turn your interface red so that you do not forget you are in a destructive mode. Unlike MC1, bulldozing a structure will now actually sell it instead of just destroy, so that it is actually more like a quick-sell option than anything else.

Besides just structures, Roads can now finally be removed too, using the bulldozer. This has been one of the top requests for a long time, and now it is a reality. This actually required a pretty substantial rewrite to how roads work, which I outlined in another thread a few weeks ago. But the work is done and the feature is here now. In the coming updates, I plan on also allowing roads to be built pretty much anywhere, not just within the confines of your own settlement, allowing vast highways to be buily across your world!

Moving on, the engine will now enforce structures that have a Settlement Level requirement (currently, only a handful of structures do). You will see this when viewing structure costs on the sidebar. Settlements are leveled up using Civics, and you can level up your settlement by selecting it from the Statistics window.

Now on to new content, as three new Techs have been added in this update: Low Atmospheric Zoology, Advanced Security and Advanced Robotics! Along with the techs, we have two additional resources added to the mix, Cloth and Robots.

Of course, there are new structures here too. The Fish Hatchery is back from MC1, allowing you to breed fish for food. The Outhouse is here, which I think was something of a gag model that GeneralWadaling sent me, but I turned it into an early game sanitation (medical) facility that you can build early on, before you can afford an infirmary. Next we have the Synthetic Textile Lab for creating cloth, and the Robotics Factory for making robots. There is a decorative United Earth Flag that takes on the color of your settlement, and the Storage Yard is a new upgrade to the Raw Materials Depot, allowing you to store way more raw materials than you previously could. Finally, the new War Factory will allow you to build this updates' new military unit, the Main Battle Tank!


All in all, there is a lot here in this update, and I hope you guys like it! So check it out, as it should be hitting all platforms over the coming days, and if you don't want to wait, fire up the web app now at the following URL. Until then, thanks for playing, and have a good weekend!

https://www.apewebapps.com/my-colony-2/

#mycolony2
2y ago


Standalone version 64bit, current 1.11.0 (but i got this error other times in older versions).


Some time, after a "back to menu" this error come out. After i need to close/reopen (and login, nickname and pass) or logout/login.

When it happens, i lose any progress in a 1-5min windows time (the other day 49.6 millions starships go puff).


I only find the error in the standalone version, the version from ape apps launcher seems immune.

The error log have only this, 3906 times:


v1.11.0 1608049703183 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049728458 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049779058 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049804242 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049824011 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049854905 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
v1.11.0 1608049905420 frame-script.js: 7219 Uncaught TypeError: message.indexOf is not a function
3y ago
frame-script.js:407 TypeError: Failed to register a ServiceWorker: A bad HTTP response code (404) was received when fetching the script.
platform.js:75 Web App Core Platform Init: web
frame-script.js:1358 https://market.ape-apps.com/adpolicy.txt
frame-script.js:1358 https://market.ape-apps.com/app_resources/featured_app.php?p=10&a=364&z=f19e6d9a-aa24-4203-86c8-843079f2b516
frame-script.js:1358 https://market.ape-apps.com/app_resources/title-newsfeed.php
frame-script.js:1358 https://api.ipify.org/?format=json
6y ago
In things like the flag design and the colony color in the colony statistics, you are forced to select a color by picking what you want from a full scale of all RGB values. However, I propose that there be a little box at the bottom of these things where you can insert a specific RGB value if you have one in mind. This could be helpful for people who really want a specific color, but also, for some people who have worlds that are created to produce a specific resource (for example, people have maps of nothing but robot factories, or triantanium reactors, or enrichment facilities, etc.) they could much more easily color-code them by being able to select the specific RGB value of the given resource. I had this idea when I was picking the colors for my abandoned world Alpha Draconian map since that's where I import all my ether from to distribute to my colonies. I would like it if I could go into a program like paint or photoshop and use the eyedropper tool to find out the RGB of the color of a resource, such as ether, and then be able to select it and insert it to color code my colonies. I think there are a lot of improvements that could be made to flags anyways, but that would be a good place to start.
Plus, for people who might model their flags off of real-world flags (or who want to use the specific red, white, and blue shades that a specific country uses, sinc most countries use those, or if they wanted the pan-African colors, or whatever) then they could also find the official RGB color code for it and import it for their flags. Thanks for reading and hopefully considering this idea!
This script is a .vpp file loader for using 3d voxel models created with Voxel Paint in your three.js projects. This loader is used by projects such as My Empire and My Colony 2. The loader takes your vpp file and converts it into a mesh object that you can add to a threejs scene. In some instances if special features are used in your model, it may return a Group object instead of a single mesh. You can learn more about how to use threejs here: https://threejs.org/

You can download the javascript file below, and this thread will be kept up to date with the latest release of the loader.

Last Updated: 11/30/2023

Basic Usage Instructions:

In your HTML:
<script src="vpploader.js"></script>

In your Javascript, .vpp models can be loaded from either a URL or from a Javascript Object. Here are examples for both:
let options = {
callback: onModelLoaded,
path: "mymodel.vpp"
};

vppLoader.getMesh(options);

function onModelLoaded(mesh) {
scene.add(mesh);
}
The options object requires at least the path or obj parameter and the callback parameter. The callback should be a function that accepts the completed three.js mesh as it's argument.

Here are the currently supported parameters for the options object:

callback: function. the function that will receive the completed three.js mesh

path: string. the relative URL of the .vpp file you want to load.

obj: object. instead of setting the path, you can specify a javascript object containing the vpp data.

color: string. if color is specified, every voxel that is set as the color #ff00ff will be swapped with the specified color.

color2: string. if color2 is specified, every voxel that is set as the color #00ffff will be swapped with the specified color.

scale: number. the scale/size of the returned mesh.

opacity number. the opacity of the returned mesh (from 0 to 1)

makeLights: boolean. if set to true, will add a three.js PointLight object to the returned model for all lights in the .vpp object that have a glow radius set.

useBasic: boolean. if set to true, model will be created using the MeshBasicMaterial, meaning it will not react to scene lighting. Better on performance, but also can be used to make a model that glows in the dark.

The vpploader script will automatically take care of reusing geometries for you when appropriate, in the event that you are adding multiple instances of the same object to your project.

If you have any questions or suggestions for the loader, feel free to leave them in this thread! I will be adding features and improvements as I add them to the .vpp file format, so if you are using this script, make sure you check back to ensure that you have the latest version of the loader.
3y ago
bastecklein said:Well you would just use the game data file for the current version. You can find it using the following syntax:

https://www.apewebapps.com/apps/my-colony/0.60.0/game.js

whereby you just change the version number in the URL to reflect the latest release version of the game. The entire file is a JSON object so it should be easy enough to parse.

annoyingly, (using 1.5.0) this does not seem to be the case. if it was JSON I could use
$gamedata = json_decode(file_get_contents('https://www.apewebapps.com/apps/my-colony/1.5.0/game.js'),true)
to get a nice PHP array; as it is I have to use
<script src="https://www.apewebapps.com/apps/my-colony/1.5.0/game.js"></script>
<script>document.getElementById('data').value = JSON.stringify(window.ColonyGame);</script>
<input type="hidden" id="data" name="data">
submit the form and then
$gamedata = json_decode($_POST['data'],true);

Having an actual JSON file would be quite useful.
4y ago
Hey guys. I was thinking of a cool addition to MC2 (still don't know if I post it here, or somewhere else, but here goes nothing)
My idea was: Flag editor from MC1, but for buildings. Basically a flag on a pole that you can edit similarily to colony flags in MC1. They would change appearance and be visible on map. Couldnt export a PNG so im sending a VPP of a makeshift flag I made in Voxel Paint.
I love making flags in MC1 and I wish for more than one in a single colony/region... ;)
3y ago
On none of my Colonies ( created in my Regions ) are my Flags shown correctly.
My Flags are Red with Black and White, i've put good work to make them look nice.

Yet people report that they are just blue with random symbols in them when they look at them.

I mainly play on WIndows 7 but also on Android and on Web i also played.

Here is an Example how my Flag looks:


And here is how others see it:


Anyone have an idea how to fix this?

Pls help @bastecklein
4y ago
Apologies to @Reyn at RPF for stealing this post code for code, but I plan on using it to expand and improve the BB Code rendering of the general Ape Apps forum software. Some rendering will appear off, since sections here using RPF's spoiler tag would, on this software, be better suited for the collapse tag. -b

Bold Text:Bold Text
*
[b]Bold Text[/b]



*
Italic Text:Italic Text
*
[i]Italic Text[/i]



*
Strikethrough Text:Strikethrough Text
*
[s]Strikethrough Text[/s]



*
Highlighted Text:Highlighted Text
*
[highlight=#FFFF00]Highlighted Text[/highlight]



*
Tag:Tagged text (tags are invisible in the actual post, but visible in the editor)
*
[tag="TagExample"]Tagged text (tags are invisible in the actual post, but visible in the editor)[/tag]



*
Size Huge:Big Text
*
[size=200]Big Text[/size]



*
Size Tiny:Baby Text
*
[size=50]Baby Text[/size]



*
Coloured Text:Coloured Text
*
[color=#FF0000]Coloured Text[/color]



*
Left Align:
Left Align Text

*
[align=left]Left Align Text[/align]



*
Right Align:
Right Align Text

*
[align=right]Right Align Text[/align]



*
Center Align:
Center Align Text

*
[align=center]Center Align Text[/align]



*
Font:Text in a different font (this one is perfect for serious posts)
*
[font=Comic Sans MS]Text in a different font.[/font]



*
Opacity:Text with different opacity
*
[opacity=50]Text with different opacity[/opacity]



*
Glow:Text that GLOWS!
You can also combine this with coloured text!

*
[glow=#ff0080]Text that GLOWS!
[color=#000000]You can also combine this with coloured text![/color][/glow]



*
Dropshadow:Text with a dropshadow
*
[dropshadow=#ff0080]Text with a dropshadow[/dropshadow]



*
Blur:You need an eye test.
*
[blur=black]Blurred text[/blur]



*
Subscript:Subscript
*
[sub]Sub[/sub]script



*
Superscript:Superscript
*
[super]Super[/super]script



*
Transparent Text:Secret invisible text
*
[color=transparent]Secret invisible text[/color]



*
Indent:Indent for your text
*
[tab=50]Indent for your text[/tab]



*
Marquee:Marquee text: text that moves across the screen. It doesn't work inside spoilers, but trust me. It works.
*
[marquee]Marquee text.[/marquee]



*
Link:Link Text
*
[url=https://www.youtube.com/watch?v=h01ONDD-QB0]Link Text[/url]



*
Link To Tag:You can use the URL code to link people to tagged points.
*
[url=#TagExample]You can use the URL code to link people to tagged points.[/url]



*
Quote:
Reyn said:Text Someone Else Said

*
[quote=Reyn]Text Someone Else Said[/quote]



*
Code Block:
Hackerman Text (doesn't parse BBCode like [b]this[/b])

*
[code]Hackerman Text[/code]



*
Code Line:Also doesn't parse [s]BBCode[/s]
*
[c]Code[/c]



*
List (Bullet):
  • More Text In A List

*
[list]Text In A List
[*]More Text In A List[/list]



*
List (Numbered):[list=1]Text In A Numbered List
[*]More Text In A Numbered List[/list]

*
[list=1]Text In A Numbered List
[*]More Text In A Numbered List[/list]



*
External Image:
*
[img]http://i67.tinypic.com/ipnwut.jpg[/img]



*
Attached Image:[attachment=0]att.PNG[/attachment]
*
[attachment=0]att.PNG[/attachment]



*
MP3 Embed:

*
[mp3]https://d1490khl9dq1ow.cloudfront.net/sfx/mp3preview/laugh-track-3_fyWRzaNd.mp3[/mp3]



*
YouTube:[YouTube=XUV863a1Lok][/YouTube]
*
[YouTube=XUV863a1Lok][/YouTube]



*
Box:
Box

*
[box=#FF0080]Box[/box]



*
Box2:
Box 2 (You can change the border with this one)

*
[box2= color=#00FF88 border=transparent]Box 2[/box2]



*
Gradient Box (RGBA Values):
Gradient Box RGBA (Basic directions are "to top" for a vertical gradient and "to right" for a horizontal one)

*
[gradbox d=to right b=transparent c=rgba(255,223,223,0.8), rgba(160,49,86,0.8)]Gradient Box RGBA[/gradbox]



*
Gradient Box (Colour Names):
Gradient Box Words (It only works with RGBA or colour names. Hex values are incompatible. You can put as many colours in as you want.)

*
[gradbox d=to top b=black c=orange, yellow, green]Gradient Box Words[/gradbox]



*
Image Box:
This is an imgbox. There is an image as the background of this.

*
[imgbox=http://i68.tinypic.com/205sj77.jpg]This is an imgbox. There is an image as the background of this.[/imgbox]



*
Spoiler:Spoiler:Spoiler text
*
[spoiler="Spoiler"][spoiler="Spoiler"]Spoiler text[/spoiler][/spoiler]



*
Spoiler2:[spoiler2=blue,yellow,castellar,"SPOILER 2"]You can edit the colours and font etc.[/spoiler2]
*
[spoiler2=blue,yellow,castellar,"SPOILER 2"]You can edit the colours and font etc.[/spoiler2]



*
Columns:
Columns of text
Boxes work in these
Specifically, 2 columns of text.And guess what:Spoilers also work in these

*
[column][col]Columns of text[box=yellow]Boxes work in these[/box][/col][col]Specifically, 2 columns of text.[spoiler="And guess what"]Spoilers also work in these[/spoiler][/col][/column]



*
Float:
Float Text
(Doesn't play nice with boxes or spoilers, but wraps normal text around it nicely. Use with caution. Lorem ipsum not included in code, for the sake of space and convenience.)
Lorem ipsum dolor sit amet consectetur adipiscing, elit porttitor ut sodales mauris aenean, primis nec dis per natoque. Primis laoreet pulvinar tempus senectus sociis pretium vehicula inceptos leo, malesuada eros nibh augue fringilla hendrerit et mattis pharetra, cum egestas in penatibus parturient imperdiet erat commodo. Placerat risus nam eros imperdiet faucibus vitae aptent accumsan, quisque massa laoreet ac est sem tellus, mattis curae vulputate egestas leo sociosqu eleifend.
Justo semper nulla enim eleifend tempor aenean integer pretium ultrices, mollis dis aliquet mi ornare pellentesque himenaeos diam potenti, neque vestibulum cursus dapibus commodo vivamus sociosqu in. Odio magnis nec non auctor dis magna eget vulputate, consequat faucibus tempus sed sem litora quam aliquam placerat, natoque eleifend ac metus per purus enim. Netus penatibus suscipit sem bibendum facilisi sed vulputate, montes inceptos curabitur cum nibh euismod, curae nunc rhoncus potenti parturient tellus.

*
[float=right]Float Text
[IMG]http://i64.tinypic.com/19phf8.png[/IMG][/float]



*
Width:

Adjusts the amount of space text and images take up.

*
[width=40][img]http://i67.tinypic.com/ipnwut.jpg[/img]
Adjusts the amount of space text and images take up.[/width]



*
Comment:
*
[comment]Only visible in the post editor.[/comment]



*
Line Break:Line
Broken

*
[hr][/hr]



*
Div:
Div blocks allow you to change all of the formatting in pretty much every way possible (text colour, border colour/type/weight, font, background colour, width, float, display type etc.).

It also works with other things
such:spoilers
and boxes
Guess what? It works with columns too. It works with pretty much everything, so go experiment with this!
You can also set the background to an image and have several div blocks next to each other. Neat!


Use THIS guide if you want more detail on div things.



*
[div="color:black;border:3px black dashed;font-family:arial;background-color:#FF6696;display:inline-block;float:left;width:70%;"]Text here.[/div][div="color:yellow;border:2px black solid;font-family:courier;background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/6/6e/SOUND_VOLTEX_Controls.JPG/220px-SOUND_VOLTEX_Controls.JPG);display:inline-block;float:right;width:28%;"]Wow![/div]



*
Table:
This is a TABLE You can put text here And it makes it into a table
The width of each column is determined by how much you type in it so don't be surprised if it doesn't work
with shorter entries [td]text here[/td] makes a new column [tr]text here[/tr] makes a new row

*
[table]
[tr][td]Row 1 Column [/td]
[td]Row 1 Column 2[/td]
[td]Row 1 Column 3[/td][/tr]
[tr][td]Row 2 Column 1[/td]
[td]Row 2 Column 2[/td]
[td]Row 2 Column 3 (etc.)[/td][/tr][/table]
5y ago
Some thoughts from NOZ
Federation leadership should either be joint or transferable from outside the game. We don't want to see a corrupted or banned colony causing the death of a federation.
Federations should have their own chat functionality.
Federation shared research. Perhaps 10% of all research done in colonies within the federation, perhaps it's a switch you can set on your research producing buildings to swap from colony research to federation research. Some federation researches should unlock options like additional commonwealths in the federation (initially 5, then 10, then 15 etc), bonuses to specific production buildings (+1% aluminum generator output across all colonies in the federation), re-skinning (permanently make all purple flags placed in colonies within this federation have dragons on them) and more. Some research should be infinitely repeatable, with an exponential cost curve.
These researches will allow each federation to be unique - we have dragons on our flags, you have red rovers, the other guys have ghost sounds when they select a microchip factory - as well as diverse, demonstrating how developed each one is. Perhaps some researches require more total colonies in the federation, perhaps some require more commonwealths. Either way, you encourage development at all levels of the political landscape, without encouraging one man federations or a dozen member commonwealths but without a single sub-colony in any of those commonwealths.

Something like Aluminum Generation Bonus Tech XLII should be difficult to obtain no matter how developed the federation is, and Aluminum Generation Bonus Tech LX might very well be ultimately un-achievable. Perhaps things like colony land expansions should even depend on a federation tech reaching a certain level.

Federations with small, expensive bonus techs are a great resource sink opportunity that should not be missed. (Maybe make centers for artificial learning consume tons of raw resources while you're at it)
It is also an unparalleled opportunity to add great replay-ability to the game.
However, do not forget to make creating a new federation *expensive*. Something like a hall of congress is simply not enough. A single person can pull that off without batting an eye. On the other hand, perhaps a building that needs to be built jointly on multiple colonies, with a price maybe 10* the hall of congress for each of, say 3 independent commonwealths, would be a great filter for ensuring that everyone and their cousin doesn't have their own federation. (this from the first guy ever to succeeded in making people want to stay in his commonwealth after their colony reached "maturity"). Remember, commonwealth independence was meant as a stepping stone to achieving "maturity" for your colony. A federation is a true community of fully developed commonwealths.
But the alternative is, of course, to make the initial founding of a federation fairly cheap, maybe even a hall of congress is sufficient, but then significant bonuses need to have great effort put into them before being actualized.
6y ago
Hi,

I have problem with loading save from file using web browser (Chrome v63.0.3239.84 64-bit).

Game(v0.52.0) was saved using Chrome browser client( More options-> Game Data -> Backup Game File ).

When I'm trying to load save from attachment (More options-> Game Data -> Restore Game File), loading screen hangs on Restoring Data...
- Chrome dev console shows:
Uncaught TypeError: Cannot read property 'length' of null
at onFileOpened (script.js:3753)
at Worker.<anonymous> (script.js:3416)
(I've attached screenshot),

-Microsoft Edge shows similar error: SCRIPT5007: Unable to get property 'length' of undefined or null reference
script.js (3752,23)

The same save file is loaded properly using:
- standalone windows app (my-colony-win-x64-0.51.0.zip),
- windows 10 store app (v0.51.0),
- latest android google play store v0.51.0

I have tried saving game using standalone Windows app but still can't load it using any Web browser.
Save file:
Error Screenshot:
6y ago
So all of the actual game content is in game.js, and script.js contains only the engine code, which is why script.js is identical in My Colony and Antiquitas.

The only barrier to allowing custom mods has to do with the graphics assets, I just have to build a way of making it work. Just altering script.js or game.js will not work because their checksums are verified with the server and altering them will flag your account, so I do not suggest it.
5y ago
Ok.. this can be a problem.

On the region, i can only enter in city create with natural resources, the city with black map give "file save corrupted!"

EDIT:

The FetchEvent for "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" resulted in a network error response: the promise was rejected.

Uncaught (in promise) TypeError: Failed to fetch sw.js:1


cloud fail
frame-script.js:2857 File does not exist!
frame-script.js:2856 cloud fail
frame-script.js:2857 File does not exist!
4y ago
I can't build any buildings anymore.

When I select a building to build I can place it on the ground, but if I click on the "Confirm" button, the "Confirm" and "Cancel" buttons disappear, but nothing happens.

In my browser console I see the following error:
not down
script.js:16871 Uncaught ReferenceError: building is not defined
at engageBuildingQueue (script.js:16871)
at HTMLButtonElement.<anonymous> (script.js:2767)


6y ago
An exciting new feature is now working in the Voxel Paint Progressive Web App (PWA) that allows you to launch and open .vpp files by simply double-clicking them on your computer, as would work with a normal installed desktop application. Voxel Paint now supports *.vpp file type association, but there are a couple of things you need to do first in order to set it up.


The first requirement is that you need to enable the new File Handling API in the experimental features of either Chrome or Edge. Browse to either chrome://flags or edge://flags (respectively) and find and enable the #file-handling-api flag.

Next, Voxel Paint has to be "installed" on your system as a PWA. This is simple enough. If you browse to the Voxel Paint web app (https://www.apewebapps.com/voxel-paint/), you will see an Install or App Available notice in the right side of the address bar. There might also be an Install option in the Help dropdown menu. Once you do this, Voxel Paint will look and behave as a normal application on your system.

Although still in the experimental stages, the File Handling API is a great new feature coming to modern browsers that will go a long way towards giving PWA's feature parity with many existing desktop applications, and I look forward to implementing the file associations feature with other apps in my catalog over the coming months!

#voxelpaint
3y ago
@bastecklein Bit late, but might there be support for time- or RNG-based flags in the future to simulate phenomena such as weather or asteroid impacts?
2y ago
These are just a few ideas that may be obvious things that bast has already decided he will implement, but hopefully some of these ideas may help. And Before you start blasting me about how bast won't ever put a pvp element into my colony, you should check the updates and announcements page under update 75, since bast includes the possibility of a pvp element with federations.

The ideas below represent an entire concept when applied together. This is how I would implement pvp between federations in my colony, but like all of my other concept ideas, it's mainly here to present new thoughts to the developer on how certain concepts could come together, and I don't expect him to just take this entire concept and put it in the game.

First off, I think that any pvp feature should be optional, just as bast said. But I do think that there should be some risk involved with enabling pvp and joining in federation wars/rivalries. I don't think that the risk should be catastrophic, but being attacked by someone else should come with some major disadvantages.

I think that in order for a rivalry/war between two federations to continue, a certain percentage of the federation should be regularly and actively involved. This way, people have to be actively participating in the rivalry in order for it to continue, so time and effort would need to be put in. While a rivalry is going on, all colonies in those federations are given buffs that increase income and production speeds of certain resources, so a rivalry would be good for business, as it also is in real life.

However, those that chose not to participate in a rivalry will not benefit at all from any benefits that come about by attacking enemy colonies, only active colonies do. This way there will be no freeloaders. I also think that there should be a cooldown timer that forces players to remain pvp active for a while after they've attacked another colony. This way colonies can't attack other colonies and then quickly disable pvp mode to avoid retaliation. However, if you accidentally enable pvp and haven't attacked anyone, you can immediately disable pvp. I also think that each colony should only be able to have one debuff affecting them at a time, but they could have multiple buffs in effect. Any further attempts to double-debuff an enemy would result in the attacker wasting a debuff chance and using resources that they could have used on another target.

Now, here comes a system of buffs and debuffs that I think would fit the pvp feature nicely. With these status effects, each colony could specialize in a certain kind of attack, or take on a certain support role in a rivalry, thus adding a bit of an rpg element to this system, but shouldn't need to get too in depth or complex with it. Below is a system of classes, point systems, and buffs and debuffs that a player can cast on other friendly or enemy colonies. Bear in mind that in order to receive a buff or debuff, you need to be in pvp mode. All buffs and debuffs require certain buildings in order to be unlocked and improved, and the best status effects require more complex buildings.

There would also be four different scores attributed to each colony that tell what kind of contribution that colony makes to the war effort and what their specialty/class is. Each class would be specified by a certain building, and only one of six of these buildings can be constructed at once in a colony. Whichever building is built determines the war class of the colony and what it specializes in. The buildings can be upgraded in tiers, giving more and more unique advantages for each tier, but also becoming more expensive. The classes are as follows:

A vanguard heads straight in and attacks the enemy headlong, splitting their focus between offense and defense. They can be capable attackers and defenders, but would more often than not pose as a distraction to the enemy, spreading their attacks and defenses onto multiple colonies at once with the splitter cast, and protecting themselves with the feedback loop cast. They focus on collecting offense and defense points.

Unique advantages: the vanguard's unique advantages focus on reducing the durations of all debuffs that they are targeted with, reducing buff/debuff cooldowns, increasing the amount of targets that a vanguarde can hit with the splitter cast, and on the highest tier, enabling the vanguard to attack an enemy and "taunt" them, thus forcing them to target the vanguard for their next attack. The taunt can also be used in combination with splitter to affect multiple enemies, forcing them all to wait on each other to take turns attacking the same vanguard before they can target another colony.

An empowerer is good at preparing their allies for an initial attack on an unsuspecting enemy. The buff their allies to strengthen them for the battle to come, and they join the ranks of vanguards in attacking and distracting the enemy. The Empowerer can counter some debuffs with buffs, but it proves to be a very inefficient counterer and can easily be picked out by an assassin if it causes too much bother in the heat of battle. It's best for this class to do all of it's buffs before battle and save the debuffs until the heat of battle. An empowerer will rack up offense and utility points, with relatively few defense points.

Unique advantages: The empowerer's unique abilities focus on buff potency, the amount of targets that splitter can reach, duration reduction to any debuffs that it experiences. And on the highest tier buildings, Empowerers gain a 1 in 5 chance to apply a buff to themselves automatically if they cast that same buff onto an ally without negating a debuff or being negated by a debuff. This allows the Empowerer to easily empower themselves while they are empowering other colonies in preparation for a battle, but doesn't help the empowerer during the heat of battle.

An assassin makes calculated strikes. Their attacks are very potent and can be made even more potent thanks to the charge cast. They are often supported by vanguards that strike before the assassins to get the initial attention from the enemies. They need not worry about protecting themselves in battle because of this. Even if they are attacked, they can retaliate quickly by using the dimensional reflection buff, thus giving their enemy a taste of their own medicine. An assassin can be good at countering buffs with debuffs, but not as effectively as they can attack an unprotected enemy. This class will have mostly offense points, with a little bit of silencer points as well.

Unique advantages: the Assassin's unique advantages focus on debuff potency and cooldown, dimensional mirror cooldown and cost reduction, increased potency and decreased cooldown on a buff affected by the charge cast, and on the highest tier, giving the assassin the ability to attack an enemy with an "evasive" attack, thus forcing the enemy to not be able to retaliate against the assassin for a certain amount of time. The enemy can target other colonies during that time though, just not that particular assassin.

The counterer focuses on offense and defense. They use their casts to negate a buff or debuff. They use the splitter and feedback loop buffs to cast negating buffs and debuffs onto themselves and other allies. The assassin might target a counterer with a potent attack at just the right time, during the counterer's cooldown time, if the counterer becomes a bother to it's enemies. So learning when to take action to help your allies and when let up for a while to lose attention from enemy colonies is a must for this class. The counterer gains equal amounts of defense and silencer points.

Unique advantages:The counterer's unique advantages focus on cooldown and resource cost reduction to all buffs and debuffs, increasing the amount of extra targets that splitter can give you, and on the highest tier, a counterer can "silence" an enemy, preventing them from attacking or defending any target for a duration, if they successfully negate that enemy's debuff or buff. The silence effect has a 1 in 5 chance of happening for each successful counter.

The healer is solely a supporter and defender, defending colonists by negating debuffs with their buffs and using buffs on allies just as utilities to boost their performance. The healer gives potent buffs and defenses to other players and is the pillar that holds up the federation in the war. They can use the charge cast to further increase the potency of a buff, which they would use to further strengthen allies. Assassins will target these the most to slow them down so the enemy will be without support, and counterers can also silence Healers by negating their buffs with debuffs. But healers are really good at empowering all of the other classes, which in turn will retaliate if one of their healers is attacked. The healer focuses on collecting defense and utility points.

Unique advantages: The healer's advantages focus on buff potency and cooldown, increased potency and decreased cooldown effects of the charge buff on all buffs, and on the highest tier, if they successfully counter a debuff with a buff, that buff's cooldown is reduced by 75%, allowing them to deal large amounts of counters in rapid succession as long as their buffs aren't re-countered/negated by an enemy.

The Commando is like an empowerer in that it buffs allies in preparation for battle, but instead of joining in the frontline assault like empowerers, commandos hide under cover of distraction and take out enemy defenses with tactical casts. They are extremely efficient with countering buffs with debuffs, yet they can't defend allies against debuffs. The commando is the hardest class to play as their position on the battlefield is an awkward one. And while they are really good at ripping enemy defenses away and preparing allies for battle, they themselves can't directly attack or defend anyone. Only choose this class if you're experienced with the pvp feature and your federation needs people of this class, otherwise you'll find yourself having a really bad experience with the pvp element.

Unique advantages: The commando looses the ability to buff people that are already affected with a debuff and the ability to debuff an enemy that's not protected by a buff, and debuff potency and duration is set to 0 so that if a commando successfully negates a buff, the debuff doesn't affect the enemy as an attack like it regularly would. This forces the commando into it's role turns debuffs solely into a means of breaking defenses instead of attacking directly. The commando also gets cooldown reduction to all debuffs, buff potency, increased splitter targets, and on the highest tier structure, the commando has a 1 in 5 chance of completely removing a buff or debuff's cooldown after casting it successfully. This means that the commando can hit many more targets than any other class in a period of time, allowing it to somewhat carpet-bomb enemy defenses or empower massive amounts of allies before the battle.

Major Benefits in participating in PVP: As factions war against each other, the colonies contributing to the war effect will share in the spoils of war. In order for Federations to start a war, both Federations must fromt a certain amount of money, and then each week after that start of the war, that same amount of money must be paid by each federation. Each week, a tally would be taken of how many successful attacks and counters were dealt by each federation. Both numbers are added together to get the Federation's battle score, and the federation with the highest score wins all of the money from all participating federations for that week. This can be used in a free-for-all war that includes multple federations as well as just a regular rivalry between two federations, and the war can continue as long as the federations want it to continue, provided they have enough money to put forward. The winning federation is required to split the winnings among it's participating colonies, but how much a percentage of the win that it keeps to itself is optional. Just bear in mind that nobody will participate if there is not a big enough reward.

Debuffs:

Benefits of debuffing enemies: When you debuff an enemy that doesn't currently have any status effects without being negated, you permanently gain a small amount of potency towards the debuff you casted and you get offense points that go to your offense score, which can be seen by other members of your federation. If you successfully negate a buffed enemy with a debuff, you gain silencer points towards your silencer score that other members can see and you permanenty gain a very small percentage chance of not being negated each time you cast a debuff or buff, even if your buff or debuff was countered correctly by a defending enemy(this also applies to buffs/debuffs casted with feedback loop). Finally, if you successfully negated a buff or debuff that negated your original buff/debuff on the same enemy, you will gain 2x silencer points and you get 2x more percentage added to your negation-block chance.

Brownout: Forcefully syphon energy from your enemy to temporarily add to your power capacity. Is negated by the Syphon buff but can negate the repair nanites buff. Casting this debuff successfully without having it negated will permanently add a 2% increase to the caster's power capacity that scales with their power capacity.
Category: Techno-warfare

EMP Blast: Blast your enemy with EMP waves that temporarily damage power producing buildings, causing a complete power blackout. the effects of the emp blast are shorter in duration than the brownout, but cannot be countered by simply increasing power production like brownout could. Negates the Syphon Buff but is negated by the repair nanites buff. Successfully casting this debuff without negation would award the caster with a permanent 2% faster build speed on all power producing buildings.

Plague: Inflict an enemy with a nasty plague that lowers the health of it's colonists over time. By treating the population of that colony like guinea pigs, you gain a boost towards research production. A plague will never kill a colonist directly, the lowest that a plague would bring a colonist would be 5%. This is avoid any colony from dying out because of warfare. Negated by the healing nanites buff but negates the probiotic bursts buff. Successfully casting this buff without negation will grant the caster a 2% increase in build speed of hospitals and scientific structures.

Famine: Target your enemy's food supply and reduce the amount of food they produce for a time. Negated by the probiotic bursts buff but negates the healing nanites buff since people can't heal without eating food. Successfully casting this buff without negation will grant the caster a permanent 2% increase in food storage.

World eater: You release a rare silicon-based life form that eats stone and metal into your enemy's colony. The creature quickly reproduces and infests all of the enemy's ore mines, viciously attacking the miners.. The enemy suffers a substantial reduction in production rates from any structure that relies on holes in the ground, including excavation sites, core mines, regolith extraction co.s, fracking plants, etc. The world eaters are trained to build storehouses for the ore they collect and share it with their masters. Successfully casting this debuff without having it negated will permanent multiply the attacker's total storage capacity for raw resources by 1.02, thus adding an extra 2% capacity in relation to the capacity they already have. This scales with resource capacity and applies to all resources that come from the ground, including alien arts, ore, gold, ura, alu, rego,
Category: Geo-warfare

Tectonic disruption: Pummel your enemy with earthquakes that make working in tall buildings extremely hard. The target suffers reduced work productivity depending on how potent your attack is and can't build or destroy any buildings during the duration of the debuff. Successfully casting this buff without negation will grant the caster 2% faster construction of any structure that classifies as a tall building.
Category: Geo-warfare

Splitter: A very costly and high tech buff that allows you to direct your buffs and debuffs toward two targets at once. In order to successfully target two allies/enemies with a particular status effect, you need to cast splitter on both targets in rapid succession(casts are no more than 5 minutes apart), otherwise the splitter buff/debuff would be wasted on only one target and the caster would have to wait the long cooldown in order to cast it again.
Category: Offensive Warfare

Malicious Sanctioning campaign: you target an enemy with a campaign to invite it's population to immigrate to your colony, thus leaching population away from them. Requires tons of civics to cast and a colony would have to be well established in order to have access to this attack and would need to have tons of space for new colonists. Negated by the repopulate buff but negates the Friendly sanctioning buff. Once a caster's housing space is filled up, the campaign will be ended, thus avoiding any homeless people. Successfully casting this debuff without running out of housing space or being negated will grant the caster a 2% increase in build speeds on all housing structures.
Category: Political Warfare

Purge: Purge your colony of any overly complacent colonists, forcing them to immigrate to your enemy. These colonists will immigrate to the enemy regardless of whether they have housing room or not. If the enemy doesn't have housing room, the immigrants because homeless and detract from their happiness score. This buff requires a lot of civics and would have a huge cooldown. Successfully casting this debuff would grant the caster a 2% increase in build speeds for all tourism structures.
Category: Political warfare

Blockade: Block and enemy's trade via gbt and all import/export/immigration buildings other than the Stargate. is negated by the subspace detour buff but negates the hyperspace transport buff. Requires starships to cast. During the blockade, the prices of all of the import/export stuctures besides your highest tier import/export building(stargate for humans) are reduced by 20% and the rewards gain from the exports are increased by 20%
Category: Economic Warfare

Subspace disruption: Disruption your enemy's Stargate connection, rendering their most advanced immigration and trade building useless. Negates the subspace detour buff but is negated by the hyperspace transport buff. During a disruption, your highest tier import/export building gains a 20% import price reduction and a 20% export reward increase.
Category: Economic Warfare

Buffs:

Benefits of buffing allies: There are good benefits to turning your colony unto a support colony that buffs it's allies. When you successfully negate a debuff, you permanently gain a small amount of resistance to the debuff that you negated, and you get defense points that go to your overall defense score that other members can see. When you cast a buff onto an ally while they aren't affected by any status affects, then you gain points towards your utility score, which other members can see as well, and you gain a potency increase to that buff.

Syphon: You temporarily sacrifice a portion of your power to add to an ally colony's power levels. Designed to negate the brownout debuff as long as the caster has enough extra power to successfully supplement that colony's needs as well as the extra demand for power that the brownout debuff adds. Unfortunately, the emp burst debuff negates this buff.
Category: Techno-warfare

Repair nanites: sends a swarm of nanites to repair any damage in an ally's technology caused by an EMP blast, immidiately negating the debuff. The brownout debuff destroys these nanites as the high electric demand causes electronics to overheat, vaporizing the nanites as they try to fix the damage. One side effect of getting hit with this buff is that they repair damage caused by other means, thereby repairing building infrastructure by a significant percentage.
Category: techno-warfare

Healing nanites: you send a swarm of healing nanites to an ally colony to heal it's occupants. Completely negates the plague debuff, but is negated by the dyson sphere debuff. Hospitals also heal sick colonists faster depending on buff potency.
Category: Bio-warfare

Probiotic bursts: gives an ally colony rapid food production for some time. This buff requires a large amount of food and water to charge, but when casted onto an ally colony, it releases massive clouds of genetically modified probiotics in the atmosphere, which help crops grow fast. negates the dyson sphere debuff, but is negated by the plague debuff.
Category: Bio-warfare

Ultrasonic resonance: Blast your ally with ultrasonic waves that purify the earth of any world eaters. Obviously this counters the world eater debuff. The resonance shakes ores and minerals loose from the rocks for easier collection. This adds a significant boost to production in all buildings that rely on holes in the ground. However, this buff does nothing against the tectonic disruption debuff.
Category: Geo-warfare

Cryonic infusion: calm an ally's planet down with the freezing power of cryo-science. Negates tectonic disruption, but world eaters are impervious to the extreme cold. The severe cold causes blue crystalline to grow on the surface of the planet, no matter what planet it is, and there is a percentage chance for each lava tile on a lava map to instantly turn into obsidian. Both of these benefits depend on buff potency.
Category: Geo-warfare

Repopulate: you sacrifice a portion of your population to save an ally from dying off by repopulating their colony. No resource or tech requirements. Not designed to negate any debuff, but designed to prevent any colony from dying off. This is a very low tier buff, and would be the first buff to be unlocked, so it really shouldn't be possible to kill off an enemy colony to where they can't recover, since they could always get reinforcements from allies. In fact, I could see some colonies specializing in this buff by increasing their population size way beyond their population requirements. Negates the sanctioning campaign debuff but people won't want to move to that colony if it been afflicted by a purge from another colony.
Category: Political Warfare

Friendly Sanctioning campaign: Help your ally by welcoming all of their homeless into your colony. The buff only stops when either the caster runs out of housing or the target runs out of homeless. negates the Purge debuff but is negated by the Malicious sanctioning debuff.
Category: Political Warfare

Subspace detour: Allow your ally to connect to your gbt via their stargate, thus allowing them to make trades. This negates a blockade debuff, but is negated by the subspace disruption debuff. Side effects from this buff include a reduced cost in civics for each gbt transaction and the reduction of cost and increase of reward from importing/exporting from the stargate or highest tier import/export building, depending on buff potency.

Wormhole: You create a wormhole above your planet that links to a wormhole above your allie's planet. Because of this, allies can travel more effectively without the need of a stargate. Negates subspace disruption but is negated by blockade. Has the same effect on gbt as subspace detour, but applies the cost and benefit modifiers to every tier other than the top tier import/export building.

SOS: This buff can only be applied to the colony casting it. It's basically a cry for help. Other allies can see a list of SOS reports for their federation and see the colony being attacked and identify the attacker. Afterward they can proceed to buff their ally in danger, or retaliate against the attacker with a debilitating debuff. There is no requirement or cost to cast this buff, you just have to have a communications device, consulate, or capital.
Category: Defensive Warfare

Feedback loop: Can only be applied to the caster, casting requires large amounts of power and the tech required with be pretty high to unlock this buff. Once this buff is casted, the caster can target themselves once with any buff, essentially being able to defend themselves instead of having to rely on another colony for counters. The feedback loop would come with a large cooldown, so the caster would have to choose wisely on.
Category: Defensive Warfare

Dimensional reflection: Reflect a buff or debuff back onto an enemy or ally, thus negating any effect on the caster completely and immediately. A high tech and a lot of resources required to cast this buff and comes with a long cooldown. This buff doesn't prevent an attack, you have to cast this buff during when you are experiencing a buff or debuff.
Category: Defensive Warfare

Charge: cast this buff before casting another buff or debuff to multiply the potency by 5. This also increases the cooldown of the buff being affected by 5. The most expensive buff in the game and comes with the highest cooldown.

-------------------------------

Now with all of that out of the way, I want to remind everyone that I'm not expecting this whole beast of a concept to be plopped into the game. I hope that bast at least takes a consideration of the concept and uses pieces and parts from it, but I mainly just want to see the game grow to become more popular and hopefully some of my ideas play a part in making that happen. I will be making changes to this post to constantly refine it based on what I learn about what is feasible to do and what bast's plans are, so stay tuned.
5y ago
Hey @Luker124 there are not predefined trigger flags in the game engine at the moment, they all need to be defined in the data models. I will make a post about the flag/script system at some point today.
2y ago
These would be four separate games based on My Colony. Will not be in the actual MC app, as they go against the basis of My Colony

My Colony Survival Edition:
You start out with a Red Planet base and a large lander with 160 people. They are there because they were chosen to be the last survivors of Earth from a huge disaster.
Gamplay: This will not be a very casual play as there will be random events and disasters. You will manage your colonists more (less people = more emotions/detail), and most of the buildings will be temporary, as the lander will quickly disappear. To win the game you have to keep 75% of your colonists for 5 in-game years and research permanent colonies and terraforming by then.
Based off of the CBS show "Salvation."

My Colony Competition Edition:
This will be a Multiplayer/PvP version of My Colony.
Set-up: Once you start-up the game, you will come to a My Colony like screen. You click new map and you have the options of Offline and Online. Offline is you versus a computer generated opponent(s). Online takes you to New Map and Existing. Existing are premade maps by other people. Every option pulls up a menu that says "Name, Civilization, Size, Resources, and Number of Players." Civilization choices are UE, LIS, and Zolarg. You can have up to 7 player spots. The rest are the same as My Colony. The maps for each civilization are the same.
Gameplay: Once your map is generated you are given a base that includes a lander/mound with solar panels, ore and gold rovers/bugs, An ore refinery, a gold refinery, a research station, housing, and a storage facility, all engulfed by a wall/fence. There is also a new exploration probe that builds claiming structures and walls and fences and flags. Your goal is to claim all of the bases of the other players. You use the exploration probes to claim more land and protect your holdings. Please add to this.

My Colony Educational Edition:
This will be an educational/accurate version of My Colony.
Gameplay: The design and setup of the game will be the same, but the gameplay will be different. There will be three playable factions, the International Space Agency, the Space Corporation, and the League of Independent States. The ISA gives you a 50% Research increase and a 25% government decrease. The Space Corp. gives you a 50% economic increase and a 25% government decrease. The LIS gives you a 50% government increase and a 25% production decrease. Each faction has the Mars, Moon, Venus, Europa, and Titan maps. They all start with a lander, miners/builders, a solar panel, a water pump, a greenhouse, base resources, and 5 colonists. The resource consumption and production should be as accurate as possible and so will be the terraforming process (pressure, O2, heat, biomass, N2, CO2). The gameplay will be more dynamic and realistic (natural disasters, riots, immigration, etc). Heavy influence from the game TerraGenesis.

My Colony Lite:
Due to My Colony's large file size, slower devices such as Android and lesser know formats can't handle the game anymore. My Colony Lite would be an offline only version of MC. It would be less dynamic and many structures and maps would be missing. The two civilizations would be a generic human and a generic alien. The maps for the humans would be Red Planet, Lunar, and Forest. The alien maps would be Desert, Ice, and Sugarland. Each map is not random, all of the resources and base structures would be in the same spot each time. Online and human alien structures would be missing. No animations nor lighting. One type of road and no super builders. There would be no premium (ad free already). All of these changes make the game much less fun, but still a good game for people who can't handle the large file size and FPS.

This is all I have for now. Please comment and add to this. Thanks!
6y ago
Today My Colony v0.54.0 (v0.54.1 on Android) is being pushed out to all platforms and should arrive on your device shortly. This was originally intended to be a big Reptilian update but there were several engine changes that took precedent this time. Details below!

My Colony v0.54.x Changelog

New Stuff
  • New structures: National Flag, Torture Booth, Drone Pad, Gold Grower, Aluminum Grower
  • New Unit: Uranium Extractor
  • New ad-free Structure: Pavement Lit
Changes
  • Memory and File Size Reductions
  • Firedrill/Employment Changes
  • Opening existing online games now requires an Ape Apps Account
  • Added engine support for variable color units and structures
Notes
The new Reptilian content is generally geared towards making the Lava World map playable. I had a lot more planned for this update, but I wanted to get it released in a timely manner, so it will have to wait until next time. Barring any major engine changes or glitches, v0.55.0 will have a lot more Reptilian stuff.

On to the engine changes. Since the last few updates, the #1 reason for crashes and getting stuck on the loading screen on mobile (especially on Android) was the game running out of memory. The reason for this is that when I designed the game originally and there were only 8 different structures to build, it made sense to load all of the assets at the beginning when you first entered the game. Today though, there are over 320 different structures and almost 50 vehicles, and many structures can now be flipped which adds extra graphics assets which need to be loaded. Because of this, you have probably noticed that the game was taking longer and longer to start up at the beginning, and sometimes it never started up at all. This was due to the game using up all of it's allotted memory from the operating system. The issue was particularly bad on Android, where the memory cap is far less generous than on Desktop computers, even on newer devices that ship with 4 gigs of RAM.

To get around this, My Colony will now only load graphics assets, on demand and as-needed. There are likely still some bugs to be worked out related to this, so let me know what you find. You might notice buildings or ground tiles not appearing right away. Generally they will show up in a second or two. Zooming in and out can also make them appear quicker some times. It might be a small annoyance, but I think the tradeoff will be worth it. Particularly on smaller colonies, the memory reductions can be quite significant.

Another new reduction in this release has to do with save file sizes. I have started compressing some of the building related save data more efficiently, which should reduce the file sizes on some saves. Your mileage will vary depending on the layout of your colony, but on my main colony, my file size was reduced by a little over 10% (compressed). I didn't do a before/after on a non-compressed colony, but it is probably similar.

Moving along, there have been significant changes to the Firedrill system, as well as the way in which 'simulated' colonists find and fill jobs. Generally, the amount of time it takes for your colony to settle back down after a fire drill has been sped up significantly. Also, simulated colonists now find and fill jobs significantly quicker than before. I realized that I forgot to apply the same improvements to the speed in which they find housing, but that will probably be in the next update.

These changes were in part to address a lot of the complaints people have about unemployment and jobs being filled. The old method had simulated colonists fill jobs based on the general unemployment rate of the colony at large, so if you had massive unemployment, they would find jobs slower, and if you had low unemployment, they would find jobs faster. In my mind, this offered a more realistic simulation, as it doesn't make sense (in 'real life') to be able to just call a fire drill and suddenly an economy is back to normal. Judging by the forums though, I think most people perceived this part of the simulation as a bug, so it has been removed. Simulated colonists will now fill jobs at their earliest convenience.

What has not changed though is the colonists' daily cycle. In general, a healthy colonist will have his day divided into 3 parts: work, sleep, time off. So if your colonists are 100% employed, which is unrealistic but somewhat common in this game, then you should at most expect 33% to be on-duty at any given time. I know that many people perceive this aspect of the game as a bug also, but to me, changing this would make the game sooooo easy, even easier than it already is.

Next up, the engine now supports adding a bit of color to certain in-game structures. This is mainly necessary for the upcoming Colony Wars game, and an example can be seen in the screenshot below:

The flags on the building now take up the color that was set in the Overview tab on the statistics screen. I might expand this more to other structures, but it was primarily put in for the benefit of Colony Wars. I also noticed that it is not working right on iOS yet, so I still need to figure that part out.

Finally, there has been a suggestion in the index for lighted roads. I made some engine changes and added one in there as a test, but I want to see how it impacts performance before expanding it further. To be determined.

So anyway, that is it for today's release. Much more on the way, so stay tuned!
6y ago
Well, it's late at night as I type this, and I've just put the finishing touches on the v0.93.0 update for My Colony. I'm going to try to get it pushed out to all platforms tonight, but if I end up getting too tired (likely) I will finish the work tomorrow. v0.93.0 is a mix update between content and features, so let's go ahead and take a look at what's new!

First of all, I made some minor interface adjustments on mobile. As some of you may know, I was busy with family most of this week and was unable to use my PC, and I took some time to spin up a new colony on mobile (an iPhone 7). It has literally been forever since I played my own game on mobile, and I noticed some annoyances right off the bat, particularly with the new chat notifications, since in-game chat has started to become a lot more active.

To address this, I moved things around a bit. Now, the build menu icon appears in the bottom right of the screen, above the standard bottom right buttons. The chat notifications are now aligned to the bottom-right corner of the screen, and no longer have a darkened background. Also, their rendering order has been adjusted so that they no longer appear on top of other menus.

In addition, when not using resource "marquee" mode, the top-right resource display no longer has a darkened background, and the text has gotten a bit of extra black border around it to make up for the difference. Also, all of the remaining UI elements with a simi-transparent black background have been adjusted to have the same opacity level, since I thought it looked strange having some UI elements being less transparent and some being more. For the most part, these UI changes are minor, but I think they will make the game a bit more enjoyable on mobile, particularly the issue with the chat notifications covering up important UI dialogs.

Next, I made another change regarding the chat notifications. Previously, clicking on one of the notifications would open up the in-game chat slideout. This is no longer the case. Now when you click on an in-game chat notification, it opens up the brand new User dialog window, showing you all of the online colonies for the Ape Apps user who is chatting.

Clicking on one of their colonies opens up the standard colony info window, allowing you to send gifts and messages. I realized that with so many requests for resources coming in over chat, it was cumbersome to have to go to the communications hub and put in a charter code. Now you can just click on their name and send them some resources.

And speaking of the colony info window, it too has been slightly revamped. It now shows the colony owners username (clicking on it brings up their list of colonies), and the action buttons have been moved to the bottom right corner of the screenshot.

Sorry for picking on you here @Westy266 , but your beautiful colony screenshot just had to make it to the release notes. Oh, and that rectangle in the top-right corner of the screenshot area is the flag of the colony, which leads to the next new feature, colonial flags, along with built-in flag maker.

The Stats screen has a new Flag section, which takes you to the flag maker. I need to clean up the interface a bit, but it's mainly functional. Basically, a flag consists of three primary sections, the overall background color, the "parts" section, and the "logos" section. The background color is pretty self explanatory (I hope).

The "parts" section consists of things like stripes, bars, circles etc, of various shapes, sizes, and positions. You can add as many parts as you want, there is no limit, and you can set different colors for each.

Likewise, the "logos" section lets you add little symbols to the flag. Like parts, you can also add as many logos as you want. You can set their placement, and the slider let's you adjust their size. Most of them allow you to set their color, but some do not. Most of the logos come from in-game UI assets right now.

I plan on expanding the "parts" and "logos" selection in the coming updates, so let me know what kind of things you want to see added, so that you can make the best colonial flag for your awesome colony!

Next up, a couple of important changes have been made to Regions.
  • Now, all region colonies should share a common gifting capacity, so that you do not need to build huge capacity buildings in every map.
  • Regional natural resource deposits (ore/gold/aluminum/etc) will now actually deplete when the colony is not active
So that second one is pretty important, since it is a departure to the way regions had been working, and some colonies might be built depending on the old behavior. However, the old behavior was obviously flawed, so I think that the adjustment was necessary.

Moving on, I raised the costs a bit on the Tech Office Building. That building is sort of powerful, and I didn't nerf it any, but I did make it slightly more expensive.

Also in this update, I made further changes to how colonists handle Work, Medical, Entertainment, and Protesting. These all have long standing irregularities that aren't so easy to fix, so I hope these new adjustments help.

Finally, I went ahead and added a bit more content as well, mostly more I.T. stuff, but also a couple of other things.

New Techs Added
  • Multimedia Infrastructure
  • Proxy Servers
  • Insectoid Mind Network
New Structures Added
  • Ether Tree Farm
  • Quantum Nuclear Reactor
  • Official News Station
  • Imperial Propaganda Office
  • Online Black Market Office
  • Hacker Camp
It's a little late and I'm a little tired to explain all of the new content, but you can mostly look at the names and see what's going on. You can check out the IT industries ideas Vol.3! thread to see what I was pulling from for the I.T. stuff (and to give you an idea of what is coming next). I also added upgraded structures for the old Nuclear Reactor and the Tree Farm.

So that about wraps it up for this update. I think the pace and scale of updates has been pretty good lately, so I will probably be keeping it like this for a while. There will probably be a few more I.T. related updates, plus a ton of other stuff currently sitting in the suggestions box, so keep the ideas and bug reports flowing!

I hope you enjoy the update, and as always, thanks for playing My Colony!
5y ago
I have just put the finishing touches on the v0.75.0 update to My Colony, and will begin pushing it out to all platforms tomorrow (Thursday) morning, possibly even tonight if I get time. This is a huge update in terms of "under the hood" changes, and so there is a lot to cover here. It also marks the beginning of a series of "online" focused updates which will be taking place between now and the end of the year.

Now that My Colony has arrived on Steam (which you can find here), I have decided to shift focus a bit more away from the mobile side of things, towards the Desktop and online side of things. My Colony has always played better on the Desktop, but since the majority of users were on mobile, a lot of the design of the game had to be made with that reality in mind. As some of you already know, a few months ago, Google Play blacklisted My Colony from their store search results, cratering the mobile downloads of the game by over 90%. As a result, the My Colony user base has transformed from over 90% mobile users, to now almost 50/50 with Desktop users, spread out between my website, the Ape Apps Launcher, Windows 10, Chrome OS, Facebook Games, and now Steam. And even though the crash ratings on Google Play are back down under 2% and the downloads have picked back up slightly, it is still nowhere near where it once was. On top of that, the experience did open my eyes as to how Google Play operates, and demonstrated the risk involved with being tied so heavily to one platform. On Desktop, things are spread fairly evenly between the distribution networks (too early to tell on Steam yet), so there is a little bit of safety that comes with that situation. Plus, as I said, the game is just 10 times better on Desktop anyway.

So, just to be clear, I am not abandoning Android and iOS, and those platforms will continue to receive all of the latest updates. I am just not going to be focused on mobile first, and some features may not work on mobile platforms, as you will soon see below.

But enough of the intro, you are here to see what is new in this version, and there is quite a bit. So let's take a look!

First I want to go through some of the bugs that were addressed in this release, as one of them has a pretty large impact on later-stage Human colonies. So during this update, I discovered a mistake in the code that was majorly"nerfing" building consumption and production when the building had a very low "tick" phase. The two prime examples where the Ancient Alien Condenser and the Atmosphere Scrubber, but it would also impact buildings with tons of employees, like the Investment Bank.

Essentially, if the production/consumption tick phase was lower than that of the overall simulation's building tick phase, a bunch of update cycles for that building would get skipped, causing it to produce or consume resources at a far slower rate than it was supposed to. As far as I can tell, this issue has been baked into the game for ages, and when adding new content, I have just set the stats in a way to compensate for it, not even realizing it was there. As soon as I fixed the glitch though, the impact on Atmosphere was immediately apparent.

Ancient Alien Condensers and the Atmosphere Scrubber immediately went into "beast mode", chewing through millions of atmosphere in a matter of minutes. This brought my Atmosphere down to zero, causing all of the condensers in the colony to shut down, since they were out of "fuel". This led to an immediate water shortage which was difficult to get on top of, since I could not generate new atmosphere fast enough to keep up with the consumption of the condensers. I eventually just had to import a ton of water from the Star Gate.

Anyway, to address this, I slightly nerfed the stats on the Condenser, and introduced a new upgraded Large Atmosphere Generator to assist in rebuilding Atmosphere. I kept the Scrubbers running in beast mode though, I figured at their new consumption level, one Atmosphere Scrubber can take care of a pretty good sized colony.

So be aware of this new change, and modify your colony accordingly. I already know the bug reports section will be full of "I updated and now all of my Water is gone" reports, so just be aware of what is happening. It is not exactly a bug, but the result of the fix of a bug.

The next fix is related to Creative Mode in Region games. Basically, it didn't work before, and now it should.

Speaking of Regions, there was a glitch where Resource decay would be greatly amplified on Region maps. This has been corrected. I have also implemented several changes which I hope address the issue people have on Regions where tech/resources are lost. I cannot reproduce this issue on my own, so I hope the fix works. I know you will make me aware if it doesn't though!

Next, a lot of changes were made to the server this update. I am getting ready to add in-game moderators to My Colony, which I had hoped to have ready by now, but the server needed so many changes to accommodate for it, that I just didn't get to it. Just know that it is coming soon though.

The first big change comes with authenticated API calls. Aside from the public API's, you basically need to be logged in to your Ape Apps account to do anything on the server now. This requirement seems like a no brainer, but you have to realize that the My Colony server predates the Ape Apps Account server, and there were originally no account requirements at all.

Due to this change, the tie between your Ape Apps Account, your online colony, and the website is now pretty solid. If you happen to get banned from Ape Apps for some unrelated reason, your colony is pretty much inaccessible too, and you will need to send me an email convincing me why you should be able to get back in.

All colony resources are now stored on the server as well. They have actually been stored on the server for some time, but the server would never override the resources saved to your game file. Now it will. The server now keeps a timestamp and checksum synchronized to your online game saves, so that it can detect if you have decided to go back and restore a backup game file. This is to help detect different forms of cheating that are out there, and while restoring a backup does not flag you as a cheater, it is logged and will be available for review by the soon-to-be-announced in-game moderators.

Next up, in-game private messaging has been moved from the my-colony.com servers to the main ape-apps.com servers. As a result, you can now view and reply to your in-game private messages from right here on ape-apps.com. They will also soon be available on my-colony.com. Currently, they don't render very well on the website, but I will be making it all look pretty shortly. In-game it doesn't look much different from before, but in theory the message size limit is gone, although the game still doesn't let you write more characters. The website does though. In the coming updates though, the entire in-game messaging interface will be rewritten to take advantage of the new features available by using ape-apps.com messaging.

The next big change in the game, which I have mentioned already in another thread and some may not be pleased with, is the complete rewrite of how colonial GDP is calculated. In short, it is now an actual GDP calculation, instead of just the sum of all of your resources. So now instead of measuring just how rich you are, which anybody can attain by simply getting a big gift from another colony or from the Galactic Emperor, it is now a measure of the current productive output of all of your buildings, tax collections, and resource collections. In this way, your GDP only grows if your industrial output is growing. If you are maxed out with full storage, then your GDP will be stagnant. I might adjust it next update to have GBT profits figured into the calculation as well, since it is technically a sale of goods. I haven't decided yet.

The game tracks your GDP over time, and will give you both quarterly and annual prints. It takes about two hours of game time to collect enough data to get a full GDP reading, so be aware of that. In your stats, the large GDP number is your current quarterly rate, and the smaller number is the annual rate. One game "year" is roughly equivalent to one real life hour. The quarterly and annual growth percentages also factor GBT price inflation into their calculations, so that large fluctuations in GBT prices do not throw the GDP growth values way off. In addition, the game ai now has "economic analysts" who will try to guess what your GDP growth rate should be every quarter, based on the trends of the last year, and will let you know each quarter if you were on target or below estimates. It's sort of like watching CNBC.

I might start adding other fun little news items to the GBT price ticker on the bottom of the screen too.

Next, there is a new feature that I hope people are able to have some fun with. I have added the ability in-game to stream a live feed of your game play onto your colony website at my-colony.com. On supported platforms, there will now be a "Streaming" button in the bottom right corner of the screen. When you click on it, it will start up your live feed and turn Red, letting you know that it is on.

It also uses your microphone (if available and you give it permission) so that people watching your stream can hear your amazing voice-over commentary. Also when you turn on streaming, the in-game chat channel and the chat channel on your my-colony.com colony site are synchronized, so that you can text-chat directly with those viewing your feed. You will also get a notification in-game when somebody starts watching your live feed.

The in-game streaming works if you are playing on Chrome, Android, Native Client/Steam. It does not currently work on iOS or Windows 10 (Store) edition of the game. I am not sure about Facebook Game Center, as I did not test it.

Moving on, I have decided to merge the in-game popup Commonwealth and Diplomacy windows into the main Statistics window, so that everything is in one place. In-game private messaging will also be moving to this window soon, and eventually, a revamped in-game encyclopedia will be in there as well. I just think it's better to have all of the options in one tidy place.

You may have also noticed a new "Federation" option at the bottom. Federations are headed in-game to My Colony. I have been promising them for a year and a half now, and since I decided to focus on online play for the next couple of months, Federations went ahead and made the cut.

Creating or joining a Federation requires "government level 7", which is game-engine speak for "you need to build the Hall of Congress." This is pretty much the most expensive building in the game, and before now it hasn't really done anything for you. Now it unlocks Federations. Because of this requirement, only United Earth and LIS can make or join Federations, but Reptilians and Zolarg will be getting their own equivalent buildings in 0.76.0.

The only thing you can do with Federations right now is either make one, or join one. Making one is expensive, and joining one is free. However, when you choose to join a Federation, current federation members receive a ballot in their Federation screen and must vote to approve your membership.

Balloting works like this. When a new measure is put up, it will expire in three days. At the end of three days, the yays and nays are counted, and the winner is determined. However, if a measure receives yays (or nays) from over 50% of current Federation members before the three days are up, the vote is also ended.

The balloting system only works for admitting members right now, but it is going to be greatly expanded. Unlike Commonwealths, Federations are an "alliance of equals", with each independent member state getting 1 vote. One colony will be the president, voted on by the other members. The President will be able to put new initiatives up to a vote, and only the president can put a new initiative up, unless that initiative is a vote of no-confidence in the President, which could be needed if the current president goes inactive.

Federations are going to be able to do things that regular colonies cannot do and, for those who wish to enable it, there is going to be an optional PVP element coming for Federations making use of Star Ships. I am not talking about attacking peoples bases or anything, but you might be able to send your fleet to blockade a planet, disrupt communications, etc. I am welcome to ideas on it, but this element will be 100% optional, and you can only do the PVP mode with Federation members who have enabled it. I want people to still be able to play a 100% peaceful mode if they wish.

The Federations are in the early stages, but there will be new Federation stuff with each update, so feel free to start one up and start accepting members, so you are ready for when the fun stuff goes live.

So those are the primary new things in this update, I am sure there are others, but I don't remember off the top of my head. Now I just want to give a quick update on what is coming next.

As I mentioned, Federations are going to be fleshed out over the next few updates. In addition, both Federations and non-federation planets will be able to establish Trade Routes using their Star Ships, and the Colonial Map from the my-colony.com website is going to be accessible in-game soon to aid in this. There are also new interactions coming for Embassies, some of which will only be available to PVP Federations. To support this, both Zolarg and Reptilians are getting new giant 'Hall of Congress' type building soon, as well as Star Ship production.

There are also going to be further changes made to the My Colony website to accommodate all of the new stuff. Federations will each have their own page, and unlike Commonwealths, there will be a few customization options for a Federation page. If you haven't looked at the My Colony website recently, check it out, I've been adding things here and there over the last few weeks: https://www.my-colony.com/

Finally, in-game moderators are on the way. I have several applications, and will be contacting people with offers as soon as the server is ready for them. There is still a bit of server work I need to do to accommodate what I want to do with moderation, but I think when it's all implemented, it will make the online experience a lot better for everybody.

So that is all for this update. This one took me longer than normal to put together, and I have to spend the next few days catching up on other projects, but I should start v0.76.0 mid next-week. Until then, enjoy the update, and it should be hitting all platforms within the coming days!
6y ago
2webappcore.js Failed to load resource: the server responded with a status of 404 (Not Found)<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
script.js:247 Uncaught ReferenceError: webAppCore is not defined
at startApp (script.js:247)
6y ago
Today I am putting the finishing touches on Death 3d v0.15.0, which comes with some exciting new changes and updates!

First of all, e2m6 - Engineering has been added to the Pegasus campaign.


In this level, you must fight your way through the Galactic Freight Pegasus' main engineering deck.

Next, an exciting new feature has been added to the game - the Map Shop! The built-in level editor has a new menu option Submit to Map Shop, which will allow you to upload your custom map to the Ape Apps server. The map will then be available to download for all users in the new Map Shop browser that is available in the also new and redesigned Play Game screen.


You can make updates to your map and submit them to the Map Shop too, and eventually players' downloaded maps will auto-update. I just forgot to add that part in when I was finalizing the release, but custom map auto-updating will be functional in the next update. I have added the first map to the map shop, Lunar Outpost, which features a Galactic Freight piracy assault on a United Earth lunar base. The map also demonstrates some NPC scripting if you can locate the hidden scientist.

Moving on, the Map Editor now let's you embed custom map tile textures into your maps!


You can add as many custom textures to your map as you like, although they will obviously increase the file size of your map. Custom textures can be used anywhere a regular texture is used, and maps with custom textures are supported in the new Map Shop as well.

The Map Editor has also gained to features for NPC characters. You can now select the weapon that an NPC is holding (or make them completely unarmed). Pairing the custom NPC weapon with the NPC script event to turn the NPC into an enemy, you can now effectively customize the weapon of any enemy (as previously requested by @stupidsilentandas ). I will probably add the custom weapon option directly to enemies at some point, I just haven't gotten to it yet.


NPC's also have a new script action, Explode. This is a ridiculous action that, as the name suggests, causes the NPC to spontaneously explode, gibbing his body and causing damage to nearby players. I am thinking of making an "NPC Funhouse" map for the Map Shop that demonstrates some of the things you can do to the poor NPC characters in the game.

Additionally, you can now add custom text dialog to NPC scripts, allowing you to add an element of story and dialog to your custom maps.

The map editor now lets you set any wall tile to "offset" (or half size). You can find the option by right-clicking on a wall tile on the map.

Finally, there is now spawn/teleport fragging. If you spawn or teleport on top of another player or enemy, they will instantly die in brutal fashion.

Anyway, that is it for today's Death 3d update. I plan on adding a lot more over the coming months, as well as a lot more custom maps to the Map Shop. I will also be further expanding the Map Shop by adding feedback and ratings, so map creators can look at how many people have tried their map and view their feedback. I also want to add multiplayer to the current "single player" game modes, so that you can do a co-op campaign or custom map. I also want to greatly expand NPC scripting, because I have a cool idea for a new game based on the Death 3d engine that takes place again in the My Colony Universe, but plays as a continuous story driven game like Half Life.

And of course, if you haven't played Death 3d yet, you can get it right now on the Ape Market or through the various app stores:
https://market.ape-apps.com/death-3d.html

#death3d
3y ago
Today I am putting the finishing touches on My Colony 2 v0.17.0, which should be hitting all platforms over the coming days. In some ways, v0.17.0 on the outside is a minor update, but in other ways it begins to completely change everything for the My Colony series, as several new concepts are coming online. So let's take a look at what has changed and what is new with My Colony 2 v0.17.0 - The Phara Update!


The My Colony 2 engine is starting to gain support for AI controlled civilizations, and the first work has been started in this regard with the introduction of the Phara, a new Desert World native species conceptualized by @GeneralWadaling nearly a year ago. Desert World players will start to notice the new faction and their settlements crop up around their maps.

There is still a ton of work to be done with the AI, and some bugs to work out. At present, the AI doesn't do much except for generate new settlements, so don't expect any interactions or diplomacy quite yet. The AI routines are going to be fleshed out over the next several updates, and the initial AI processing is going to be largely based on the AI code from Colony Wars, but more on that later.

I have wanted AI controlled civilizations in My Colony since the first release of MC1, but have never gotten around to it. You may or may not know that My Colony 1 was initially envisioned as a futuristic version of Sid Meiers's Colonization, and was to have native species to deal with and you would also have to fight against the "king" for independence (in My Colony's case, United Earth). The game never turned out like that, and My Colony 2 will not have fighting for independence either, although the engine might in fact support that scenario soon, but we will get to that later too.

I next want to move on to a new concept I have added to the game, which is progression through both Player and Settlement leveling up.


Settlements now have a Level, which you can increase by using Civics. Behind the scenes, Players also have a level which can be increased using Money, but that part is not yet implemented.

Right now there isn't a huge point in leveling up, although eventually some government type structures and policy options will require either a specific player or settlement level to unlock. This adds extra goals and an additional player progression aspect to the game. Various forms of this have been suggested throughout the years for My Colony 1, so keep an eye on these features as they are fleshed out over the coming updates.

Next, I want to touch on what has been by far the #1 requested My Colony feature since the game first came out - Military and Combat, both of which are now making their way into My Colony 2!


This is another concept in it's initial phases and some of it still doesn't work right, but let's go through it. There is a new early-game tech called Colonial Security which is now needed for the Security Station and also unlocks the new Barracks. From the Barracks, you can now construct the first military unit, which is the Infantry unit. The Infantry is able to either attack or defend. It will automatically attack enemy units if in range, and will attack an enemy structure on command. A lot of the initial combat code has been taken from Colony Wars.

So what constitutes an enemy? The engine now accounts for diplomatic relations between each player behind the scenes. Players can either be Neutral (the default status), Enemies, or Allies. To become an enemy, you open the Players tab in the Statistics window, click on a player, and choose to declare war on them. They will instantly be notified of your treachery.


Now, here are the limitations. The 'Propose Alliance' and 'Sue for Peace' options currently are not functional, so if you do decide to declare war, there is no getting out of it. So keep that in mind.

There is a lot more to say on AI's and the new Combat features, but there have also been some other tweaks to the game that I wanted to touch on before getting too deep into the woods.

Firstly, when you go to build a new unit, it will now appear at the Construction Yard that is the closest to where your current camera position is location. In other words, if you are actively looking at a construction yard and you build a new unit, it will pop out of the construction yard you are looking at. This comes in handy as settlements begin to spread out and grow.

Another big change is that new players who join your public game will no longer start out at chunk 0:0. I know that it could be annoying to have all Landers start the game at the exact same spot, so the new Landers will now be randomly placed, somewhat in the area of the currently settled world, but away from all other players.

Now some kind of bad news. You may know that I recently updated Voxel Paint with some cool new features, such as metallic voxels, transparent voxels, etc. Well, I went to implement those features into the My Colony 2 engine, and it completely kills performance. I don't know why yet, but just having one structure with a metallic texture destroys the game, and that is on a high end PC with a good video card. So until I can get the performance situation worked out, the cool new features from Voxel Paint will have to wait. 🙁

Now I want to dive a bit deeper into some of the new features, and how they tie to what I have planned for My Colony 2 going forward.

Some of you may have heard during some of my Podcast episodes or from various release notes here on the forum that I had long wanted to make a game called 'New World' that involved showing up on a new continent in ships like the Spanish did, and trying to get rich on a land inhabited by natives. Well, Amazon recently beat me to the New World game, but the idea still remains in my mind. A lot of this updates recent changes, including AI civs and combat, go directly towards making that game concept a reality.

Additionally, there has recently been discussion with GeneralWadaling about migrating Colony Wars to the Scroll3D engine. I think that my new strategy instead is going to be to have the My Colony 2 engine be sophisticated and customizable enough to be able to be morphed into a Colony Wars type Real Time Strategy game. This would be great for multiple reasons. Firstly, less game engines to maintain is always a good thing for me. Secondly, it will greatly increase the capabilities that modders have to make different types of games for the My Colony 2 engine. A win for everybody!

So with the above two points in mind, here are some things I need to work out before I can make everything a reality, which should give you an idea of some of the features that will be coming soon to My Colony 2.

Firstly, there needs to be more World options then the current infinite maps. You need to be able to create maps of a specific size, and also maps that have a predefined layout, which means some type of map editor. To get started on this work, the next World type I am adding to the game is going to be the My Colony Classic world, which will be roughly equivalent to an MC1 large sized Red Planet map (probably not suitable for multiplayer). It should be a fun challenge for some players, but will also bring important new features to the engine.

Next of course, the AI needs to be expanded and improved. The first order of business is to get the AI's capabilities to be roughly in line with those in Colony Wars, which will allow basic war and RTS support. In addition though, the AI needs to be able to conduct peaceful diplomacy and trades. And for that matter, players need to be able to trade with each other as well.

Modders need to be able to customize various UI aspects. The game UI needs to be able to basically look like the Colony Wars UI, which means options need to be added to show/hide elements and to more the position of different elements. The new/join game screen also needs to be customizable.

And of course, the game content needs to be expanded as well, and that will happen over time for sure.

So there is a ton of work to do, and absolutely all feedback is appreciated. In the meantime though, check out the v0.17.0 update to My Colony 2, and stay tuned for a whole lot more to come!

#mycolony2 #colonywars #voxelpaint
3y ago
Any chance you can make a script that runs in the background that basically clicks the show workers tab on each building? I spend all day clicking on individual buildings and it's horrible. Is there a way to like click on all buildings of a certain type and show all the workers at once? I'm running out of water because I can't find the stuck workers fast enough.
6y ago
A small python script to programmatically edit Voxel Paint files.
Current features include:

Rectangular, color-based, and key-based methods for quick and easy selection
Voxel cloning for repetitive parts in your model
Transformation and reflection functions (but no rotation yet)
Easy color mapping and custom voxel grouping for partitioning your model
Eraser for erasing big mistakes while leaving the rest of your model intact

It isn't complete yet and there will likely be certain parts of it that have bugs,
but it will continually be refined until there's nothing left on the to-do list.

All you need is rudimentary knowledge of Python.
https://github.com/spamdood/vppedit
2y ago
Today I am releasing the v2.5.0 update to My Tokens, and this update comes with the ability to export your Blockhead Token characters as Basic Model (*.bm) files for use with Basic Modeler!


Exporting is fairly simple, you simply switch your lobby view to the Blockhead Tokens setting, select one of your Tokens, and choose Export .bm. You will then be able to save the .bm file to your device, which you can then load up and do whatever you want with using Basic Modeler.


Exporting your token also gives you a good overview of the Basic Modeler script syntax, and you can also see all of the images used for the various parts of the model.

The other cool new feature as you will notice in the first screenshot is the option to Export Skin.


Now My Token skin parts are not laid out in exactly the same way as, say, a Minecraft skin, but the models are pretty much proportionally similar (even if a Token skin is higher resolution) and all of the parts are there. I'm sure a motivated coder out there could make a quick script to hack apart the .png and put it back together in the correct order to where you could make a Minecraft character out of a My Tokens character, but I will leave that though to others. I guess looking back I should have made the skins in the same order that Minecraft uses, but this work was done a long time ago when I first created the Blockhead Token, and there is no way I am going to go back and remake all of the existing Token skins, so it is what it is!

So anyway, that is it for this update to My Tokens. It is significant, as I am in the process of converting the Death 3D engine away from using 2D sprite to using Basic Models, as part of the engines upgrades to support full VR on devices like Oculus and Google Cardboard (2D sprites just don't work very well in VR, for the most part). The My Tokens update is live now on the Web and Launcher, and should be hitting other devices in the coming week, so enjoy!

https://www.apewebapps.com/my-tokens/

#mytokens #basicmodeler #death3d
2y ago
To answer questions that came up in-game about creating an MC2 news server, here is a complete .php script that you can use as a news server endpoint. Should be enough to get you started and you can customize it from there as you see fit.


<?php
header("access-control-allow-origin: *");
header("access-control-allow-headers: Content-Type");

$json = file_get_contents('php://input');
$data = json_decode($json);

if($data == null || $data == false || !property_exists($data, "req")) {
exit();
}

$requestId = $data->req;

if($requestId == "networkinfo") {
$resData = new stdClass();

$resData->networkName = "My News Network";
$resData->networkNameShort = "MNN";
$resData->logoBackground = "#ff0000";
$resData->logoText = "#00ff00";
$resData->logoStroke = "#000000";

$resData->taglines = array();

$resData->taglines[] = "My News Network - It's Good Stuff!";
$resData->taglines[] = "You are watching My News Network!";

$cannedResponses = new stdClass();

$cannedResponses->healthcrisis = array();
$cannedResponses->healthcrisis[] = "put your news headline here 1";

$cannedResponses->techunlock = array();
$cannedResponses->techunlock[] = "put your news headline here 1";

$cannedResponses->highunemp = array();
$cannedResponses->highunemp[] = "put your news headline here 1";
$cannedResponses->highunemp[] = "put your news headline here 2";

$cannedResponses->ollargestsettlement = array();
$cannedResponses->ollargestsettlement[] = "put your news headline here";
$cannedResponses->ollargestsettlement[] = "put your news headline here 2";

$cannedResponses->starvation = array();
$cannedResponses->starvation[] = "put your news headline here";
$cannedResponses->starvation[] = "put your news headline here 2";

$cannedResponses->lowapproval = array();
$cannedResponses->lowapproval[] = "put your news headline here";

$cannedResponses->lowsecurity = array();
$cannedResponses->lowsecurity[] = "put your news headline here";
$cannedResponses->lowsecurity[] = "put your news headline here 2";

$cannedResponses->lowentertainment = array();
$cannedResponses->lowentertainment[] = "put your news headline here";
$cannedResponses->lowentertainment[] = "put your news headline here 2";

$cannedResponses->loweducation = array();
$cannedResponses->loweducation[] = "put your news headline here";
$cannedResponses->loweducation[] = "put your news headline here 2";

$resData->responses = $cannedResponses;

echo json_encode($resData);
}
?>

This should be enough information to get a PHP script up and running. You need an https endpoint, you can get a free ssl cert using certbot. For a list of all of the variables that the news headline responses accept, see this thread.

Note that I did not run this code first to see if it works, so there might be typos or syntax errors, so just use your brain while implementing!

Hope that helps!
1y ago
Welcome
Ape Apps, LLC is an independent software development company founded in 2010 by Brandon Stecklein. Over the years, Ape Apps has published over 400 apps and games across various platforms. You can get in touch with Brandon on Twitter or by leaving a post on his wall @bastecklein
App of the Day