Defold 1.2.175 has been released

Defold 1.2.175

This sprint we’ve fixed more issues regarding bundling for both Android and iOS.
Also, there are some further improvements on the loading progress bar for Html5.
And, there are several improvements to the documentation.

We’ve also added .zip file support to our Live Update system. This new feature will make is possible for the app to download the entire live update .zip file, as opposed to downloading lots of smaller files, one by one.

http.request

We’ve also added a new parameter to the http.request() that lets you to download the file to a file on disc directly.

local path = sys.get_save_file("test", "/save.html")
http.request("http://www.google.com", "GET", http_callback, nil, nil, {path = path})

Work in progress

Engine

  • Issue-5189 - Added: LU: Added support for downloading entire live update zip file
  • Issue-5200 - Fixed: Fixed gui particle crash after deletion
  • Issue-5215 - Fixed: Fixed restarting engine service after second reboot
  • Issue-5245 - Fixed: Added option sound.use_thread
  • Issue-5275 - Fixed: Destroy particle fx callback early if we failed to invoke it
  • Issue-5284 - Fixed: Http request download to file on disc
  • Issue-5292 - Fixed: Added more verbose progress info to bob’s resolve command
  • Issue-5288 - Fixed: Invoke the gui callback before removing the animation
  • Issue-5147 - Fixed: iOS: Add support for app store icon
  • Issue-5213 - Fixed: iOS: Removed log spam during touches
  • Issue-5249 - Fixed: Android: sys.exit() works again on Android
  • Issue-5250 - Fixed: Android: Update AndroidBundler.java
  • Issue-5257 - Fixed: Android: Patch the bundled JDK to include jarsigner
  • Issue-5240 - Fixed: Android: Compile and link resources on the build server
  • Issue-5277 - Fixed: Android: Use the KeyStore class to get the first keystore alias
  • Issue-5279 - Fixed: Android: Better handling of lost surface during lock/unlock (also #5100)
  • Issue-5185 - Fixed: Win: Auto select high perf gpu on windows
  • Issue-5211 - Fixed: Html5: Progress bar fixes (gzip+engine load)
  • Issue-5223 - Fixed: NE: Added defines DM_RELEASE, DM_DEBUG and DM_HEADLESS to builds
  • Issue-5248 - Fixed: Doc: Improved license summary
  • Issue-5291 - Fixed: Doc: Fix doc for buffer.create
  • Issue-5295 - Fixed: bob.jar doesn’t resolve dependencies unnecessarily
  • Issue-5303 - Fixed: The game can now use both OpenGL / Vulkan graphics adapters again

Live Update

We’ve added the functionality to download the entire liveupdate zip file to disc, and register it to the live update system.
This will help fix projects that want to download all assets at once. It will also reduce Lua temporary memory overhead to a minimum.

In order to make this work we’ve had to add several smaller features.

http.request()

http.request now takes two extra options:

  • path: the path to which the file should be saved
  • ignore_cache: don’t write the data to the http cache

The ignore_cache is useful in the specific case of only testing for a HTTP 304, and not wanting to actually get the data in the Lua callback.

resource.store_archive()

This function takes a file path, verifies it against the game manifest, and then stores a file reference in the live update folder. Next time the app reboots, it will load the file reference as the live update archive. See full example in the documentation.

resource.is_using_liveupdate_data()

Returns true if the game if liveupdate data is present and loaded

20 Likes

Thanks for the update!

  1. users who use custom engine_template.html, don’t forget to update this file too.

  2. looks like template for FB extension need to update too (there are no load_engine function now)

2 Likes

Bundling for iOS with v1.2.175 spat back this when uploaded to Testflight:

Could this be related to the new Assets.car file?

Update: I tried bundling with v1.2.174 with no changes to the project, and that didn’t produce the error above when uploaded.

Can you please try adding this to your Info.plist:

    <key>UIRequiresFullScreen</key>
    <true/>

From the following discussion: 1024 x 1024 icon asset missing for iOS (SOLVED)

Sorry for the delay on this one. We’re mid-release at the moment, I’ll try this flag for the next update!

1 Like

I also notice long editor start up time, both when loading editor and when loading projects. Previously editor start up time was almost instance. Projects of course were loading longer due extensions, but after .175 update they loads even longer.

It’s not a big deal, i just wondering why it is happening)

1 Like

I cannot think of anything we’ve done to accidentally delay the start up times.
Perhaps you can look in the log file to see if any of the steps takes a noticable long time.

Did you update from 1.2.174 or an older version? And what if you revert back again to an older version?

I have the same issue here on mac, also with 1.2.174. I solved this using

sudo hostname localhost

in a terminal. This should also be cited elsewhere in some post…

I think those were due to Apple suddenly having their servers down. You know the servers every app phone back to when launched…

It happened also to me two days ago, but just for half a hour and then everything worked fine. I was and I am still experiencing long engine start up time; and that I solved with the command I reported above. Sorry for not being very clear or for misunderstanding something…

1 Like

Does the editor launch fast with a net connection disabled? And you are all on macOS Big Sur? On Win10 it seems normal.

2 Likes

I have updated from 1.2.174

I have done some testing:
From full system reboot:
1.2.174 ~ 5 seconds
1.2.175 ~ 1 minute

Any other openings after first opening
1.2.174 ~ 5 seconds
1.2.175 ~ 5 seconds

Time was measured starting from splash screen appearance till window with projects appears. It looks like something going on during first launch on 175.

OS: Win 10

My PC is likey older than yours, I tested doing a clean restart with nothing else doing anything and it takes about 15 seconds to open to the project selector launcher for me, which is normal on this computer. Tried again and it was about the same time. My config is set to channel = editor-alpha

If you have the free time you could try building editor versions of older commits to see where it begins to get slow for you

It looks like my config is also set to editor-alpha.
I dig into logs and found that this delay is caused by ‘new version’ check.

So timestamps in 1.2.124:
I launch editor - 18:30:19.061
Before update check - 18:30:19.844
Check - 18:30:25.456
Finished - 18:30:25.798
Total ~ 6 seconds

In 1.2.125:
I launch editor -18:26:53.057
Before update check - 18:26:56.489 (So far so good)
Check - 18:27:43.072 (Big delay here)
Finished - 18:27:45.375
Total ~ 55 seconds

If you disable your net entirely does the timing stay the same?

Maybe this change could have had an impact somehow but I don’t see how since it was only a change to the after initial update timer?

The initial update check could be removed from the welcome splash to the project list?

There could be something else going on still like a change with Github.

/editor/src/clj/editor/welcome.clj says it checks for the sample projects there. That check could be moved async into the actual project opener screen with spinning UI to show it’s working on the new project UI. If this could done the initial splash may get done sooner. It could be more samples were added?

Maybe the change between master to main had some kind of impact too? Since the old master links are dead now.

:zip-url "https://github.com/defold/template-platformer/archive/master.zip"
:zip-url "https://github.com/defold/template-platformer/archive/main.zip"

I can confirm this gets rid of the error. We will update the default Info.plist to include this value.

2 Likes

The latest dev version of the editor and bob.jar has been updated with this value in Info.plist.

http://d.defold.com/alpha/

Does the Asset.car file for the app store icons need to be in the root of the project?