Find User here you can look for a user

Ape Apps Blog

Announcing Barrel River 2, My First VR Game!

Last week I ended up purchasing an Oculus Quest 2, and to celebrate the purchase I wanted to see if I could create a VR game for it. So after a few days of hacking one together, I am ready to release my first attempt at actual VR programming, Barrel River 2!


Of course, you don't need a VR headset to play Barrel River 2. It supports multiple play modes, including keyboard, gamepad, and motion/tilt controls on mobile. No matter how you play it, the game is a pretty big improvement over the original Barrel River that I released back in 2014. Similar to the original, the goal is to collect coins while you avoid the fish and rocks. I have retained all of the corny sound effects from the first game, but the graphics have all been redone, this time created using Voxel Paint.

If you try out the game, be sure to sign in with your Ape Apps Account, which will make the game save the total number of coins you collected. In future updates I plan to add things like barrel upgrades and powerups you can get using the coins you collect, so start building them up and saving them to your account now!

You can play Barrel River 2 on any platform straight from the web browser. VR support works with the Oculus browser, Windows Mixed Reality headsets, and even Google Cardboard players. Bookmark the Barrel River 2 page or install it as a PWA!

https://br2.ape-apps.com/

#barrelriver2 #voxelpaint #barrelriver

Pixel Paint and Phasing Out of Web App Core

Today I am updating Pixel Paint to v2.0.0, which brings some UI improvements and the addition of layers, but more importantly, this release of Pixel Paint marks the beginning of a long transition period that is going to completely transform the entire Ape Web Apps ecosystem.

Ape Apps was started back in 2010 with the primary focus on Android apps, and in 2012, I launched the website Ape Web Apps as a place to host HTML5 versions of my apps and games. At that time, I also created wrapper host applications for Android, iOS and Windows for porting my HTML5 apps to "native," and exposing them to native platform features. In the years since, almost my entire software library has transitioned away from pure native applications to web applications, powered by the cross-platform Web App Core framework, which I have been updating and maintaining for the past 10 years.

Since that time, the concept of the Progressive Web App (PWA) has emerged, and web apps have been rapidly gaining capabilities to rival many of those found in native applications, making many of the capabilities found in Web App Core unnecessary or redundant. Furthermore, many of the old restrictions on web apps have been lifted. One example as that of storage space. Back when My Colony was first released, some browsers limited the storage space available to an app at 50mb, and for a time, there was an issue with players losing saved games because they were bumping up against that limit. Today the storage quotas are pretty much limited only by the free space available on the device, just like a native application.

Over the years, a lot of functions, features, and abstractions have been built into Web App Core to make cross platform development simple. As such, the library has continued to grow and grow over time. A relatively simple app like Typepad also carries with it all of the features and functions available in Web App Core, even though it only uses a small handful of them. This makes the app a lot smaller and slower loading than it needs to be.

The "industry" has also pretty much settled on the design pattern that each individual PWA needs to be hosted on it's own domain (or subdomain), which is in direct conflict with the design on the Ape Web Apps website. Sure it is workable the way Ape Web Apps is currently set up, but there are some issues that are going to become more apparent as time goes on, especially when it comes to the new File Handling API. Web apps like Voxel Paint can be associated with specific file types (like the .vpp file) so that you can double-click on them on your device and automatically load them up in the Voxel Paint web app.

This is awesome functionality, but since the PWA framework is designed to have one app per domain, things start to get messed up when you have multiple PWA's installed from a single domain (like Ape Web Apps) each trying to be associated with different file types. On some platforms, such as Windows 10/11, it still kind of works. On others, such as Chrome OS, it's totally broken. It's important that I get on top of these coming changes now, before features like File and Protocol handling become more widespread across the various web browsers.

So changes are on the way to Ape Web Apps (and the Ape Apps Launcher) that are going to impact a large percentage of the library. Firstly, a lot of the apps are going to be moving to new web addresses, the first being Pixel Paint.

Old URL: https://www.apewebapps.com/pixel-paint/
New URL: https://pixelpaint.online/

These moves will be made one by one as I convert these apps off of Web App Core. The moves also make the apps load a lot faster, since in stead of loading the entire Web App Core library, they are only using the specific functions that they need. Web App Core is being replaced by a much smaller library that basically only handles Ape Apps Account related functions, such as account login, managing premium licenses, etc.

I hope to have most apps converted off of Web App Core over the coming year, but not everything will be making the move. Some larger apps such as My Colony, My Colony 2, and some of the EZ Office related applications use so many of the Web App Core functions anyway that there would be literally no size or performance benefits to moving them off, and doing so constitute a substantial undertaking. Moving an app to a new domain also means that current saved data (that wasn't synced to Ape Cloud) would be lost, which is not acceptable for My Colony.

Going forward though, no new apps or games will be based on the old Web App Core framework, and Web App Core will only be maintained to address bugs and issues with existing applications, no new features will be added.

On apps that make the move off of Web App Core, I will still be providing a slimmed down "native" wrapper for users who wish to get the apps from an app store, but now more than ever, users will be better off installing the app through their browser as a PWA. The native apps will be little more than a webview that hosts the PWA and will have more overhead due to being packaged than just installing the PWA through the browser would. This is how all of my apps on Windows 10/11 and Steam already are, and once Android and iOS move in that direction, I will be able to make updates to all platforms without even having to submit new builds to the various app stores, saving myself a ton of time and work.

So those are the changes coming down the pike. The Ape Apps Launcher and Ape Web Apps websites will still be maintained and updated, but a lot of the links will just be redirecting you off-site. It will actually probably be better for some of the apps in terms of search engine discover-ability, being surfaced to their own domain or subdomain. I know on Pixel Paint, it's lighthouse score (which Google uses for page rankings) went from the failing to nearly 100% due to the increased loading time by no longer using Web App Core, so that should help as well.

In the meantime, check out the latest update to Pixel Paint at it's new URL, and check out the PWA by installing it to your homescreen!

https://pixelpaint.online/

#pixelpaint

Introducing the Basic Modeler

A few months ago, I introduced the new "Blockhead Token" class to My Tokens, which added a new Minecraft-character like style of Token to the My Tokens ecosystem:


These Tokens are neat, but in order to be more useful in coming games, there will need to be other objects in their worlds that they can interact with, armor/items they can hold and use, similar styled enemies, etc. Since a lot of these models are going to be used in the Scroll3D engine, world objects can certainly be created using Voxel Paint or even Blender, as Scroll3D can already handle models created with either of those platforms.

Those formats are perfectly fine, however I wanted something a bit more customizable and basic that would allow for super-fast creation of models, as well as models that can be defined/generated completely in code and modified at runtime. So for this purpose, coming soon to the Scroll3D ecosystem is a new model class, simply called the Basic Model, with an extremely easy to use model editor, the Basic Modeler.


I got the idea for the Basic Modeler from OpenSCAD. Instead of using an interactive editor like in Voxel Paint, you define the model using a scripting language, and the model is rendered and compiled based on your script. Once the scripting language is more complete, I will be posting a complete reference to it here on the forum.

The purpose for this style of model creation is to be able to dynamically create models in code at game runtime. Consider a procedurally generated type of game (like a Gone Rogue 2 or a Level Up 2 perhaps?), where there are base weapon classes, but with countless types of modifications to the base. These would be able to be defined in code, instead of making a different model for each variation.

The image above just shows a super basic model (a recreation of the Blockhead Token, but holding a low-poly hammer), but the Basic Model spec is going to support the entire range of 3D shapes beyond simple boxes, including cones, cylinders, spheres, and more. Models are made by combining variations of these basic shapes into something more complex.

To help with rotations and animations, shapes can also joined into groups, and transforms/rotations can be done on groups of objects.

In addition to defining models dynamically in code, the Basic Modeler app will allow you to export creations in the form of a new Basic Model file. The layout of a Basic Model file is going to consist of three parts, the Object Script, the Texture Array, and the Animation Array.

The Object Script will be a plain text script containing the base code for the model. This is the only required section for a Basic Mode, and many models will be created using nothing but the Object Script. I will be posting a full reference to the object scripting language once I have it more finalized.

The Texture Array is going to contain an array of compressed texture data, in the event that a user wants to embed texture files into the model. Textures are not required, and a model can simply use object script defined colors instead (as in the image above), but of course sometimes a texture is necessary (a Blockhead Token would require a texture array). To simplify this, the Basic Modeler app will allow you to easily create and assign textures without writing any code.

Finally, the Animation Array is a named array of animation scripts that can be called by the engine. The animation scripting language will be like the object model scripting language, but only accept transform/translate/rotate/state-change type commands. A model can have multiple animation scripts, such as a "walk" script, "crouch," "attack," and so on. The game engine would then be able to tell the model which animation script it should be playing.

A lot of the work for the Basic Model concept was already baked into Scroll3D from the Blockhead Token update to My Tokens, and so the initial code for this format is based off of that. You can see the Blockhead Tokens in action with the latest build of My Tokens. Going forward, the current Blockhead Token implementation is going to be replaced to use the more advanced and expansive Basic Model system.

Support for the Basic Model system is going to be built right into Scroll3D, but I will also be creating a general model loader for three.js, which will allow anybody to easily use Basic Model files in their animations in a web project.

I still have a bit of work to do on the system, and it will be slow going over Christmas week as family takes precedent to work, but if you want to putz around with what I have so far, you can head over to the beta of the modeler app here:

https://www.apewebapps.com/basic-modeler/?beta=1

To get you started with the scripting language, here is some code to create the model from the picture above:

// blockhead token generator 
// holding a "stick" to show grouping

// translate limb geometry for animation pivot point
geotranslate(0,-1.5,0);

$legRight = box(1,3,1,#1E88E5);
$legRight > position(-0.5,3,0);

$legLeft = box(1,3,1,#1E88E5);
$legLeft > position(0.5,3,0);

// start a new object group

$rightArmGroup = startgroup();

$armRight = box(1,3,1,#E53935);

$stick = box(0.5,5,0.5,#FFC107);
$stick > position(0,-2.6,3.2);
$stick > rotate(90,0,0);

$stickHead = box(0.75,0.75,3,#FF9800);
$stickHead > position(0,-2.6,6);
$stickHead > rotate(90,0,0);

endgroup();

$rightArmGroup > position(-1.5,6,0);

$armLeft = box(1,3,1,#E53935);
$armLeft > position(1.5,6,0);

// reset translation
geotranslate(0,0,0);

$body = box(2,3,1,#4CAF50);
$body > position(0,4.5,0);

$head = box(2,2,2,#FFCCBC);
$head > position(0,7,0);

// some simple example rotations
$legLeft > rotate(25,0,0);
$legRight > rotate(-25,0,0);

$rightArmGroup > rotate(-40,0,0);
$armLeft > rotate(20,0,0);

$head > rotate(0,20,0);

This is early stuff so the syntax might change, but it gives you an idea on how the system works. The Basic Modeler will probably be getting its own forum section just like Voxel Paint soon, as I am going to be using this system quite a bit for upcoming games. If you have any questions or suggestions for the format, you can leave them here, and stay tuned for more info!

#basicmodeler #basicmodel #voxelpaint #scroll3d

Introducing Ape Coins

Over the coming days, I will be rolling out a new feature to Ape Apps Accounts called Ape Coins, but since parts of the feature are already showing up in various Ape Apps locations, I thought I would take a minute to explain the concept and what can be expected, so that everyone knows what is going on.

Ape Coins are a simple digital currency tied to your Ape Apps Account. Just to be clear, they are not a crypto currency, and are only used for Ape Apps purposes. Your Ape Coin balance is tied directly to your Ape Apps Account, and carries over to all Ape Apps games, applications, and services. Ape Coins are priced at $0.01 per coin, so that 100 Ape Coins = $1.

What Are They Used For

Ape Coins can be used for in-app purchases. When you have Ape Coins on your account, there will be a new Ape Coin payment option when you are going to unlock Premium on one of my games/apps.

They can also be used in different ways by different games. I have considered the possibility, for instance, of adding an in-game Mod store to My Colony 2, where mod creators could charge a small Ape Coin fee for their work (or post for free also). They could also be used to facilitate in-game economy in some types of games.

Ape Coins can facilitate micro transactions. Since a single in-app purchase typically cannot be less than $1 in value, using Ape Coins, content could be priced far lower than $1, as little as 1 cent per transation.

How To Obtain Ape Coins

Currently, Ape Coins can be purchased from the Ape Apps Account portal at https://accounts.ape-apps.com. Once rolled out, you will also be able to purchase them in-app using the various App Store payment methods.

I am also allowing for full transfer of Ape Coins between Ape Apps Accounts. In the past, people have requested the ability to purchase Premium on behalf of an account that was not their own, whether for a friend or a child. Now, you will be able to purchase Ape Coins on your account and then send them directly to another account.

On this website, your Profile (Wall) page will soon include a button that will allow someone to give you Ape Coins. This button will also be on your profile page within the Ape Apps Launcher. Also when a user is live-streaming their game play, as you can in My Colony for instance, there will be a "Donate Ape Coins" button for people watching the stream.

As mentioned before, some games may eventually allow players to sell content to other players for Ape Coins, which will be another way in which they can be earned.

The system also allows for me to have contests or giveaways, whereby I could easily award winners free Ape Coins directly to their account.

Limitations

There will be some limitations to the system. Firstly, the purchasing of a Premium license using Ape Coins will only be available on Ape Web Apps or the Ape Apps Launcher. Unfortunately, this is due to the various rules and limitations of the major app stores (see Epic VS Apple for instance). Once you purchase premium though, it will be tied to your account, and will then work on mobile apps. You just can't do the actual purchase from within the app.

That limitation does not count for microtransactions though. If you already have Ape Coins on your account, you would be able to use them in-app on Android or iPhone, just not to purchase Premium. And Android and iPhone users would only be allowed to purchase Ape Coins in-app using the respective app store payment methods.

I also someday would like to have the ability for users to cash out their Ape Coins, especially if they were selling digital goods like mods or maps. This will not be available for a little while though. The reason being, is cashing out coins will require government tax reporting, and I will have to collect tax and banking information for any user wishing to cash out. So while the feature might come at some point, for now the coins are just to be used within the Ape Apps ecosystem.

Conclusion

You may have seen some Ape Coins references sprinkled around my ecosystem here and there over the last couple of days, and now you know what the deal is. The new system is coming for those who wish to use it, although there is no requirement to use the Ape Coin system at all, and Premium can still be purchased the same way that it always has. This is just one more payment method that may make things easier for some users, and also unlocks potential for other things in the future.

Anyway, let me know if you have any questions or comments!

#mycolony2 #apeappslauncher

Major Update for My Tokens

Today, I am updating My Tokens to v2.1.0, and this is a major update in preparation for some new capabilities that will be arriving to the Tokens platform with the to-be-released game of Token Kart and some other things. But the big new feature in this update to My Tokens is the brand new Token Lobby!


The old token selection screen has been replaced by the new Scroll3D powered Token Lobby, where you will see all of your tokens walking around doing stuff. You can toggle between the three current token styles (mini, big, and voxel), and customize the colors of your lobby.

In addition to the Lobby, you can now send your token to your customizable Photo Booth where you can take and save pictures of your token creations.


With the lobby in place, I plan to add more features to My Tokens over the coming updates. Obviously, a plain empty lobby isn't going to do, so we are going to need a way to add and place objects in your lobby. Also, why not let other tokens visit your lobby? Roaming tokens from other users on your Ape Apps friends list will eventually be able to visit your lobby and interact with your tokens. I am also working on a way for Token characters to earn items/accessories/achievements in different Token enabled games, which you will be able to use or display in your lobby.

Finally, in addition to the three current Token variations, I would like to add a fully 3D modeled and animated My Token variant, although by 3D skills are not there enough yet to make it happen, but it will be coming eventually, as I will need a fairly easy way to create characters for my next generation of 3D games, and My Tokens can be a great engine for that (for example, all of the Death 3D and Dungeon Infinity characters were created using My Tokens).

So anyway, that is it for this My Tokens update. It is currently live on the Web and will be heading to all platforms soon. Make sure you are signed in to your Ape Apps account in order to access the lobby, try it out, let me know what you think, and tell me what you would like to see added to My Tokens in the future!

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

#mytokens #death3d #dungeoninfinity
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