HTBAH Android Port Build Failed

Studio Mystic

Member
Game Developer
Oct 31, 2020
262
840
So I'm trying to build distributions in RenPy for my game , but it's not working. The error code is way over my head so any help would be great. Thanks.

Code:
Ren'Py 7.4.5.1648

Updating project.

Creating assets directory.

Creating expansion file.

Packaging internal data.

I'm using Gradle to build the package.
To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: https://docs.gradle.org/6.1.1/userguide/gradle_daemon.html.
Daemon will be stopped at the end of the build stopping after processing

> Configure project :app
WARNING: API 'ApkVariantOutput.getVersionCodeOverride()' is obsolete and has been replaced with 'VariantOutput.versionCode()'.
It will be removed in version 5.0 of the Android Gradle plugin.
Gradle Properties must be used to change Variant information.
For more information, see https://d.android.com/r/tools/use-properties.
To determine what is calling ApkVariantOutput.getVersionCodeOverride(), use -Pandroid.debug.obsoleteApi=true on the command line to display more information.

> Configure project :expansion
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
It will be removed in version 5.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :license
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
It will be removed in version 5.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :zip
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
It will be removed in version 5.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Task :app:preBuild UP-TO-DATE
> Task :app:preReleaseBuild UP-TO-DATE
> Task :expansion:preBuild UP-TO-DATE
> Task :expansion:preReleaseBuild UP-TO-DATE
> Task :license:preBuild UP-TO-DATE
> Task :license:preReleaseBuild UP-TO-DATE
> Task :license:compileReleaseAidl UP-TO-DATE
> Task :zip:preBuild UP-TO-DATE
> Task :zip:preReleaseBuild UP-TO-DATE
> Task :zip:compileReleaseAidl NO-SOURCE
> Task :expansion:compileReleaseAidl NO-SOURCE
> Task :renpyandroid:preBuild UP-TO-DATE
> Task :renpyandroid:preReleaseBuild UP-TO-DATE
> Task :renpyandroid:compileReleaseAidl NO-SOURCE
> Task :app:compileReleaseAidl NO-SOURCE
> Task :expansion:packageReleaseRenderscript NO-SOURCE
> Task :license:packageReleaseRenderscript NO-SOURCE
> Task :renpyandroid:packageReleaseRenderscript NO-SOURCE
> Task :zip:packageReleaseRenderscript NO-SOURCE
> Task :app:compileReleaseRenderscript NO-SOURCE
> Task :app:generateReleaseBuildConfig UP-TO-DATE
> Task :app:javaPreCompileRelease UP-TO-DATE
> Task :app:generateReleaseResValues UP-TO-DATE
> Task :app:generateReleaseResources UP-TO-DATE
> Task :expansion:compileReleaseRenderscript NO-SOURCE
> Task :expansion:generateReleaseResValues UP-TO-DATE
> Task :expansion:generateReleaseResources UP-TO-DATE
> Task :expansion:packageReleaseResources UP-TO-DATE
> Task :license:compileReleaseRenderscript NO-SOURCE
> Task :license:generateReleaseResValues UP-TO-DATE
> Task :license:generateReleaseResources UP-TO-DATE
> Task :license:packageReleaseResources UP-TO-DATE
> Task :renpyandroid:compileReleaseRenderscript NO-SOURCE
> Task :renpyandroid:generateReleaseResValues UP-TO-DATE
> Task :renpyandroid:generateReleaseResources UP-TO-DATE
> Task :renpyandroid:packageReleaseResources UP-TO-DATE
> Task :zip:compileReleaseRenderscript NO-SOURCE
> Task :zip:generateReleaseResValues UP-TO-DATE
> Task :zip:generateReleaseResources UP-TO-DATE
> Task :zip:packageReleaseResources UP-TO-DATE
> Task :app:createReleaseCompatibleScreenManifests UP-TO-DATE
> Task :app:extractDeepLinksRelease UP-TO-DATE
> Task :expansion:extractDeepLinksRelease UP-TO-DATE
> Task :expansion:processReleaseManifest UP-TO-DATE
> Task :license:extractDeepLinksRelease UP-TO-DATE
> Task :license:processReleaseManifest UP-TO-DATE
> Task :renpyandroid:extractDeepLinksRelease UP-TO-DATE
> Task :renpyandroid:processReleaseManifest UP-TO-DATE
> Task :zip:extractDeepLinksRelease UP-TO-DATE
> Task :zip:processReleaseManifest UP-TO-DATE
> Task :app:processReleaseManifest UP-TO-DATE
> Task :expansion:compileReleaseLibraryResources UP-TO-DATE
> Task :expansion:parseReleaseLocalResources UP-TO-DATE
> Task :license:parseReleaseLocalResources UP-TO-DATE
> Task :license:generateReleaseRFile UP-TO-DATE
> Task :zip:parseReleaseLocalResources UP-TO-DATE
> Task :zip:generateReleaseRFile UP-TO-DATE
> Task :expansion:generateReleaseRFile UP-TO-DATE
> Task :license:compileReleaseLibraryResources UP-TO-DATE
> Task :renpyandroid:compileReleaseLibraryResources UP-TO-DATE
> Task :renpyandroid:parseReleaseLocalResources UP-TO-DATE
> Task :renpyandroid:generateReleaseRFile UP-TO-DATE
> Task :zip:compileReleaseLibraryResources UP-TO-DATE
> Task :expansion:generateReleaseBuildConfig UP-TO-DATE
> Task :expansion:javaPreCompileRelease UP-TO-DATE
> Task :license:generateReleaseBuildConfig UP-TO-DATE
> Task :license:javaPreCompileRelease UP-TO-DATE
> Task :license:compileReleaseJavaWithJavac UP-TO-DATE
> Task :license:bundleLibCompileToJarRelease UP-TO-DATE
> Task :zip:generateReleaseBuildConfig UP-TO-DATE
> Task :zip:javaPreCompileRelease UP-TO-DATE
> Task :zip:compileReleaseJavaWithJavac UP-TO-DATE
> Task :zip:bundleLibCompileToJarRelease UP-TO-DATE
> Task :expansion:compileReleaseJavaWithJavac UP-TO-DATE
> Task :expansion:bundleLibCompileToJarRelease UP-TO-DATE
> Task :renpyandroid:generateReleaseBuildConfig UP-TO-DATE
> Task :renpyandroid:javaPreCompileRelease UP-TO-DATE

> Task :renpyandroid:compileReleaseJavaWithJavac FAILED
F:\Game Dev Network Folder\RenPy\renpy-7.4.5-sdk\rapt\project\renpyandroid\src\main\java\org\renpy\android\Constants.java:10: error: integer number too large: 2148338547
    public static int fileSize = 2148338547;
                                 ^
1 error

> Task :app:mergeReleaseResources

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':renpyandroid:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':renpyandroid:compileReleaseJavaWithJavac'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:205)
    at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:203)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:184)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:109)
    at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
    at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed; see the compiler error output for details.
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:56)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:39)
    at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:100)
    at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:52)
    at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:38)
    at org.gradle.api.internal.tasks.compile.AnnotationProcessorDiscoveringCompiler.execute(AnnotationProcessorDiscoveringCompiler.java:51)
    at org.gradle.api.internal.tasks.compile.AnnotationProcessorDiscoveringCompiler.execute(AnnotationProcessorDiscoveringCompiler.java:37)
    at org.gradle.api.internal.tasks.compile.CleaningJavaCompiler.execute(CleaningJavaCompiler.java:53)
    at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilerFactory.lambda$createRebuildAllCompiler$0(IncrementalCompilerFactory.java:98)
    at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringCompiler.execute(IncrementalResultStoringCompiler.java:60)
    at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringCompiler.execute(IncrementalResultStoringCompiler.java:44)
    at org.gradle.api.internal.tasks.compile.CompileJavaBuildOperationReportingCompiler$2.call(CompileJavaBuildOperationReportingCompiler.java:59)
    at org.gradle.api.internal.tasks.compile.CompileJavaBuildOperationReportingCompiler$2.call(CompileJavaBuildOperationReportingCompiler.java:51)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
    at org.gradle.api.internal.tasks.compile.CompileJavaBuildOperationReportingCompiler.execute(CompileJavaBuildOperationReportingCompiler.java:51)
    at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:208)
    at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:179)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:104)
    at org.gradle.api.internal.project.taskfactory.IncrementalInputsTaskAction.doExecute(IncrementalInputsTaskAction.java:32)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
    at org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute(AbstractIncrementalTaskAction.java:25)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:568)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:553)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:536)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:109)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:276)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:265)
    at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$0(ExecuteStep.java:32)
    at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:32)
    at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
    at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:63)
    at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:35)
    at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
    at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
    at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
    at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
    at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
    at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
    at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
    at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
    at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
    at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
    at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:153)
    at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:67)
    at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:41)
    at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
    at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
    at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
    at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
    at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
    at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
    at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
    at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
    at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
    at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
    at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
    at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
    at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
    at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
    at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
    at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
    at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
    at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
    at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
    at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
    at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:192)
    ... 30 more


* Get more help at https://help.gradle.org

BUILD FAILED in 6s
51 actionable tasks: 2 executed, 49 up-to-date




The build seems to have failed.
 
Last edited:
  • Like
Reactions: hofom77573

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,497
7,085
F:\Game Dev Network Folder\RenPy\renpy-7.4.5-sdk\rapt\project\renpyandroid\src\main\java\org\renpy\android\Constants.java:10: error: integer number too large: 2148338547
public static int fileSize = 2148338547;
How big is your Windows or Mac build? This error seems to indicate that your Android build is bigger than 2048 megabytes, which is the upper limit for an Android build. (And even a build that makes it in just under that limit probably won't install on a lot of devices.)

If you're making a build this big, you probably need to do some serious image compression if you want to make an Android build.
 

Studio Mystic

Member
Game Developer
Oct 31, 2020
262
840
The game is 3GB and growing because it's captured in 4K and has video animations. Why does RenPy have a build size limit? That's pretty backward for 2021. 2GB is tiny for a modern game. Even if I ruin the image quality by dropping everything down to 1080p, the build still comes in at 1.9GB. Which is right at the limit... And I'm not even done developing the game. One more update would push this right back over 2GB. Is there a workaround?
 
Last edited:
  • Thinking Face
Reactions: hofom77573

hofom77573

Member
Apr 17, 2021
343
541
The game is 3GB and growing because it's captured in 4K and has video animations. Why does RenPy have a build size limit? That's pretty backward for 2021. 2GB is tiny for a modern game. Even if I ruin the image quality by dropping everything down to 1080p, the build still comes in at 1.9GB. Which is right at the limit... And I'm not even done developing the game. One more update would push this right back over 2GB. Is there a workaround?
Not really for Android unless you want to school a horde of new fans on how to install it.

You could try making a build that works with JOIPlay


Telling players to install using PC assumes the player has access to a PC.
https://f95zone.to/threads/champion-of-realms-v0-52-zimon.40009/post-5401422

Even if it is 2021 some phones only have 4-16GB of total memory unless the user buys an SD Card. Keep in mind you'll be dealing with users that have no clue what the gibberish above even means or what version of Android they are even using.

Then there is the whole thing that the screen is like 5x3in so 4K and 1080p is wasted on this user base...



However this is all for Android Users, the PC Master Race (PC, Linux, Mac) don't really need to worry that much.

Ren'Py Tom I think does Android as a hobby so getting the kinks out isn't a top priority. Don't think he even updated Security Permissions for Android 11 which is causing some issues as Players are getting locked out of transferring their saves.
 

V4mpire

Member
Game Developer
Dec 20, 2020
145
268
The game is 3GB and growing because it's captured in 4K and has video animations. Why does RenPy have a build size limit? That's pretty backward for 2021. 2GB is tiny for a modern game. Even if I ruin the image quality by dropping everything down to 1080p, the build still comes in at 1.9GB. Which is right at the limit... And I'm not even done developing the game. One more update would push this right back over 2GB. Is there a workaround?
I'd actually crunch it more, the quality won't really be noticed on a phone because of the screen size, but allows more room for updates, otherwise it's as others have said, moving to joiplay
 
  • Like
Reactions: hofom77573