It is currently 26 Aug 2025, 23:11
   
Text Size

Forge for Android v1.6.15.003

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Which version of Android are you using on the primary device that you run Forge on?

Poll ended at 01 Aug 2017, 08:12

Android 4
3
9%
Android 5
4
12%
Android 6
10
29%
Android 7
17
50%
 
Total votes : 34

Re: Forge for Android v1.6.2.004

Postby 1mrlee » 29 Aug 2017, 04:34

Bug:

Forge Android is unable to cast planeswalkers with a oath of nissa in play with colorless.
1mrlee
 
Posts: 45
Joined: 07 Oct 2015, 00:34
Has thanked: 0 time
Been thanked: 4 times

Re: Forge for Android v1.6.2.004

Postby DaniUG » 29 Aug 2017, 18:21

Description: commander game, nothing special. Just an alpha strike

NoSuchMethodError | Open
Code: Select all
Forge Version:    1.6.2.004
Operating System: Linux 4.1.18-gce6cee1 armv7l
Java Version:     0 The Android Project

java.lang.NoSuchMethodError: No static method join(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String; in class Ljava/lang/String; or its super classes (declaration of 'java.lang.String' appears in /system/framework/core-oj.jar)
   at forge.game.ability.effects.DiscardEffect.getStackDescription(DiscardEffect.java:92)
   at forge.game.ability.SpellAbilityEffect.getStackDescriptionWithSubs(SpellAbilityEffect.java:89)
   at forge.game.spellability.AbilitySub.getStackDescription(AbilitySub.java:114)
   at forge.player.HumanPlay.payCostDuringAbilityResolve(HumanPlay.java:308)
   at forge.player.PlayerControllerHuman.payCostToPreventEffect(PlayerControllerHuman.java:1431)
   at forge.game.ability.AbilityUtils.handleUnlessCost(AbilityUtils.java:1409)
   at forge.game.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1330)
   at forge.game.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1320)
   at forge.game.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1334)
   at forge.game.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1320)
   at forge.game.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1334)
   at forge.game.ability.AbilityUtils.resolve(AbilityUtils.java:1304)
   at forge.ai.ComputerUtil.playNoStack(ComputerUtil.java:304)
   at forge.ai.PlayerControllerAi.playSpellAbilityNoStack(PlayerControllerAi.java:338)
   at forge.game.replacement.ReplacementHandler.executeReplacement(ReplacementHandler.java:273)
   at forge.game.replacement.ReplacementHandler.run(ReplacementHandler.java:157)
   at forge.game.replacement.ReplacementHandler.run(ReplacementHandler.java:83)
   at forge.game.player.Player.doDraw(Player.java:1304)
   at forge.game.player.Player.drawCards(Player.java:1283)
   at forge.game.player.Player.drawCard(Player.java:1215)
   at forge.game.phase.PhaseHandler.onPhaseBegin(PhaseHandler.java:250)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:1003)
   at forge.game.GameAction.startGame(GameAction.java:1570)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
   at java.lang.Thread.run(Thread.java:776)
Even the smallest spark may set a world ablaze
User avatar
DaniUG
 
Posts: 59
Joined: 01 Jul 2015, 10:36
Has thanked: 11 times
Been thanked: 0 time

Re: Forge for Android v1.6.2.004

Postby jrrkein » 30 Aug 2017, 00:23

Not sure if this helps
| Open
(ThreadUtil first call): Running on a machine with 8 cpu core(s)
java.util.concurrent.TimeoutException
at java.util.concurrent.FutureTask.get(FutureTask.java:176)
at forge.util.ThreadUtil.executeWithTimeout(ThreadUtil.java:54)
at forge.util.FileUtil.readFile(FileUtil.java:291)
at forge.util.FileUtil.readFileToString(FileUtil.java:286)
at forge.assets.AssetsDownloader.checkForUpdates(AssetsDownloader.java:37)
at forge.Forge$1.run(Forge.java:97)
at java.lang.Thread.run(Thread.java:818)
Language 'java.util.PropertyResourceBundle@1a24b92c' loaded successfully.
Read cards: 16994 archived files in 5860 ms (25 parts) using thread pool
FSkin$loadFull: Missing a sprite (default icons, preferred icons, or foils.
com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:98)
at com.badlogic.gdx.graphics.GLTexture.createTextureData(GLTexture.java:185)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:103)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:95)
at forge.assets.FSkin.loadFull(FSkin.java:187)
at forge.Forge.afterDbLoaded(Forge.java:120)
at forge.Forge.access$300(Forge.java:41)
at forge.Forge$1$1.run(Forge.java:110)
at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:415)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1583)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1286)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Error reading file: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png (Absolute)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:144)
at com.badlogic.gdx.backends.android.AndroidFileHandle.read(AndroidFileHandle.java:80)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:222)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
... 11 more
Caused by: java.io.FileNotFoundException: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png: open failed: ENOENT (No such file or directory)
at libcore.io.IoBridge.open(IoBridge.java:496)
at java.io.FileInputStream.<init>(FileInputStream.java:76)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:140)
... 14 more
Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
at libcore.io.Posix.open(Native Method)
at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
at libcore.io.IoBridge.open(IoBridge.java:482)
... 16 more
java.lang.NullPointerException: Attempt to read from field 'float com.badlogic.gdx.graphics.Color.a' on a null object reference
at forge.assets.FSkinColor.getAlpha(FSkinColor.java:266)
at forge.screens.match.TargetingOverlay.updateColors(TargetingOverlay.java:50)
at forge.assets.FSkinColor.updateAll(FSkinColor.java:262)
at forge.assets.FSkin.loadFull(FSkin.java:262)
at forge.Forge.afterDbLoaded(Forge.java:120)
at forge.Forge.access$300(Forge.java:41)
at forge.Forge$1$1.run(Forge.java:110)
at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:415)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1583)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1286)
[CDS][DNS]Unable to resolve host "releases.cardforge.org": No address associated with hostname
jrrkein
 
Posts: 19
Joined: 03 Aug 2016, 09:59
Has thanked: 0 time
Been thanked: 0 time

Re: Forge for Android v1.6.2.004

Postby Agetian » 30 Aug 2017, 04:57

jrrkein wrote:Not sure if this helps
| Open
(ThreadUtil first call): Running on a machine with 8 cpu core(s)
java.util.concurrent.TimeoutException
at java.util.concurrent.FutureTask.get(FutureTask.java:176)
at forge.util.ThreadUtil.executeWithTimeout(ThreadUtil.java:54)
at forge.util.FileUtil.readFile(FileUtil.java:291)
at forge.util.FileUtil.readFileToString(FileUtil.java:286)
at forge.assets.AssetsDownloader.checkForUpdates(AssetsDownloader.java:37)
at forge.Forge$1.run(Forge.java:97)
at java.lang.Thread.run(Thread.java:818)
Language 'java.util.PropertyResourceBundle@1a24b92c' loaded successfully.
Read cards: 16994 archived files in 5860 ms (25 parts) using thread pool
FSkin$loadFull: Missing a sprite (default icons, preferred icons, or foils.
com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:98)
at com.badlogic.gdx.graphics.GLTexture.createTextureData(GLTexture.java:185)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:103)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:95)
at forge.assets.FSkin.loadFull(FSkin.java:187)
at forge.Forge.afterDbLoaded(Forge.java:120)
at forge.Forge.access$300(Forge.java:41)
at forge.Forge$1$1.run(Forge.java:110)
at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:415)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1583)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1286)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Error reading file: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png (Absolute)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:144)
at com.badlogic.gdx.backends.android.AndroidFileHandle.read(AndroidFileHandle.java:80)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:222)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
... 11 more
Caused by: java.io.FileNotFoundException: /storage/emulated/0/Forge/res/skins/default/sprite_icons.png: open failed: ENOENT (No such file or directory)
at libcore.io.IoBridge.open(IoBridge.java:496)
at java.io.FileInputStream.<init>(FileInputStream.java:76)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:140)
... 14 more
Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
at libcore.io.Posix.open(Native Method)
at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
at libcore.io.IoBridge.open(IoBridge.java:482)
... 16 more
java.lang.NullPointerException: Attempt to read from field 'float com.badlogic.gdx.graphics.Color.a' on a null object reference
at forge.assets.FSkinColor.getAlpha(FSkinColor.java:266)
at forge.screens.match.TargetingOverlay.updateColors(TargetingOverlay.java:50)
at forge.assets.FSkinColor.updateAll(FSkinColor.java:262)
at forge.assets.FSkin.loadFull(FSkin.java:262)
at forge.Forge.afterDbLoaded(Forge.java:120)
at forge.Forge.access$300(Forge.java:41)
at forge.Forge$1$1.run(Forge.java:110)
at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:415)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1583)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1286)
[CDS][DNS]Unable to resolve host "releases.cardforge.org": No address associated with hostname
Yeah, this basically says that your game assets haven't been downloaded fully and/or extracted properly, which may have been due to a network connection error or for some other reason. Try reinstalling the game by: 1) redownloading and manually reinstalling the APK from the first post in this thread; 2) deleting (or moving) the "res" folder, which should prompt the game to redownload the assets upon startup. This should help.

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Forge for Android v1.6.2.004

Postby jrrkein » 30 Aug 2017, 11:19

Did:
1) moving "res" folder = stuck "checking for update". No prompt

2) reinstall the app = stuck at checking for update
jrrkein
 
Posts: 19
Joined: 03 Aug 2016, 09:59
Has thanked: 0 time
Been thanked: 0 time

Re: Forge for Android v1.6.2.004

Postby jureidinim » 30 Aug 2017, 13:31

Hi guys - just looking for confirmation on how EXALTED: (Whenever a creature you control attacks alone, that creature gets +1/+1 until end of turn) .. works.
It seems to me to be doubling up?
I played an AI which had Sigiled Paladin out which has Exalted. It is a 2/2 creature. It attacks alone and i expected it to be now a 3/3 creature, but it stacks twice on the queue and goes to 4/4 ??

Later, a Knight of Glory comes out - also with exalted, and a Sublime Archangel (also exalted - but it makes all other creatures you control get exalted - and if its multiple it will trigger individually). The Sigiled Paladin attacks alone, and goes from 2/2 creature up to a 10/10?
Shouldn't it be: Sigiled Paladin attacks alone: 2/2;
Exalted: +1/+1
Knight of Glory Exalted ability: +1/+1
Sublime Archangel Exalted ability: +1/+1
Sublime ArchAngel gives Exalted: +1/+1
Sigiled Paladin is now a : 6/6 ... not 10/10????

**EDIT** Sublime Archangel would also give exalted to Knight of Glory for another: +1/+1
Total for Sigiled Paladin attacking alone would then be 7/7 (still not 10/10???)

Am I just not understanding how exalted works or is this a bug?
jureidinim
 
Posts: 53
Joined: 07 Feb 2014, 04:41
Has thanked: 3 times
Been thanked: 4 times

Re: Forge for Android v1.6.2.004

Postby Agetian » 30 Aug 2017, 15:27

jrrkein wrote:Did:
1) moving "res" folder = stuck "checking for update". No prompt

2) reinstall the app = stuck at checking for update
Hmm it might be that you can't reach the update server for some reason :/ Does anything change if you try a different Internet connection, if possible?

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Forge for Android v1.6.2.004

Postby Agetian » 30 Aug 2017, 15:28

UPDATE (08/30/17): Forge for Android v1.6.2.005 has been released. It's an incremental update featuring some fixes of reported bugs, and also introduces some implemented Ixalan cards that have been revealed so far. These cards will only be visible and playable if Developer Mode is enabled in the preferences. Enjoy!

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Forge for Android v1.6.2.004

Postby Agetian » 30 Aug 2017, 15:29

@ jureidinim: If there's something that gives Exalted to other creatures on the battlefield, it actually gives an additional Exalted instance to it (I believe they stack), so Exalted starts to trigger twice for them since there are two instances :)

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Forge for Android v1.6.2.004

Postby jureidinim » 30 Aug 2017, 15:41

Agetian wrote:@ jureidinim: If there's something that gives Exalted to other creatures on the battlefield, it actually gives an additional Exalted instance to it (I believe they stack), so Exalted starts to trigger twice for them since there are two instances :)

- Agetian
Hi - thanks - but i still cant see how it adds up like that. Especially when the Paladin was the only creature on the battlefield and it attacked and went from 2/2 to 4/4.
I think the text on the Sublime Archangel said it gives Exalted to OTHER creatures you own.. so i wouldn't expect it to give it to itself? or is that how it is supposed to work?
jureidinim
 
Posts: 53
Joined: 07 Feb 2014, 04:41
Has thanked: 3 times
Been thanked: 4 times

Re: Forge for Android v1.6.2.004

Postby jureidinim » 30 Aug 2017, 15:53

jureidinim wrote:
Agetian wrote:@ jureidinim: If there's something that gives Exalted to other creatures on the battlefield, it actually gives an additional Exalted instance to it (I believe they stack), so Exalted starts to trigger twice for them since there are two instances :)

- Agetian
Hi - thanks - but i still cant see how it adds up like that. Especially when the Paladin was the only creature on the battlefield and it attacked and went from 2/2 to 4/4.
I think the text on the Sublime Archangel said it gives Exalted to OTHER creatures you own.. so i wouldn't expect it to give it to itself? or is that how it is supposed to work?
Quoting my own post :)
.. But i think i figured it out.

Its a Planar conquest match. A Vanguard match against Dauntless Escort.
While the battle is going on, i see the Dauntless Escort card for my self and my opponent (on the far right of battlefield), and that card gives Exalted to all attackers based on the text of the card (attacking alone) - so that's where the extra +1/+1 seems to be coming from.


**EDITED - removed question here -- figured it out... thanks!
jureidinim
 
Posts: 53
Joined: 07 Feb 2014, 04:41
Has thanked: 3 times
Been thanked: 4 times

Re: Forge for Android v1.6.2.004

Postby DaniUG » 01 Sep 2017, 15:44

Description: waiting for the damage to be signed and the match to be won. Attacking with 12 or so creatures.

OutOfMemoryError | Open
Code: Select all
Forge Version:    1.6.2.005
Operating System: Linux 4.1.18-gce6cee1 armv7l
Java Version:     0 The Android Project

java.lang.OutOfMemoryError: Failed to allocate a 544 byte allocation with 4194304 free bytes and 34MB until OOM; failed due to fragmentation (required continguous free 8192 bytes for a new buffer where largest contiguous free 4096 bytes)
   at java.lang.Object.internalClone(Native Method)
   at java.lang.Object.clone(Object.java:229)
   at java.util.EnumMap.<init>(EnumMap.java:172)
   at com.google.common.collect.Maps.newEnumMap(Maps.java:351)
   at forge.game.card.CardUtil.getLKICopy(CardUtil.java:512)
   at forge.game.zone.Zone.getLKICopy(Zone.java:264)
   at forge.game.Game.copyLastState(Game.java:161)
   at forge.game.combat.Combat.dealAssignedDamage(Combat.java:787)
   at forge.game.phase.PhaseHandler.onPhaseBegin(PhaseHandler.java:317)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:1003)
   at forge.game.GameAction.startGame(GameAction.java:1574)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
   at java.lang.Thread.run(Thread.java:776)
Even the smallest spark may set a world ablaze
User avatar
DaniUG
 
Posts: 59
Joined: 01 Jul 2015, 10:36
Has thanked: 11 times
Been thanked: 0 time

Re: Forge for Android v1.6.2.004

Postby RationalGaze » 02 Sep 2017, 18:46

Just joining the forums.
Great job on building MTG into an apk.
RationalGaze
 
Posts: 29
Joined: 02 Sep 2017, 18:37
Has thanked: 15 times
Been thanked: 5 times

Re: Forge for Android v1.6.2.004

Postby kevlahnota » 05 Sep 2017, 19:03

On android, You can activate opponents stack ability or cast stack cards when zoomed. Then NPE when you try activating or casting the stack card/ability.
Screenshot_20170906-025452.png

Screenshot_20170906-025510.png
User avatar
kevlahnota
Programmer
 
Posts: 825
Joined: 19 Jul 2010, 17:45
Location: Philippines
Has thanked: 14 times
Been thanked: 264 times

Re: Forge for Android v1.6.2.004

Postby Agetian » 06 Sep 2017, 03:37

kevlahnota wrote:On android, You can activate opponents stack ability or cast stack cards when zoomed. Then NPE when you try activating or casting the stack card/ability.
Screenshot_20170906-025452.png

Screenshot_20170906-025510.png
Hmm, this is really odd :/ What's even more funny, it doesn't happen when running libgdx Forge on PC (e.g. in debug mode). I'll need to think why this might be happening.

EDIT: Tried it on my Android phone and couldn't repro it as well... what are the exact conditions when this is happening?

- Agetian
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

PreviousNext

Return to Forge

Who is online

Users browsing this forum: Majestic-12 [Bot] and 33 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 34 users online :: 1 registered, 0 hidden and 33 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: Majestic-12 [Bot] and 33 guests

Login Form