It is currently 17 May 2025, 01:18
   
Text Size

Forge Beta: 09-12-2014 ver 1.5.26

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

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby lujo » 17 Sep 2014, 10:15

excessum wrote:There are cards like Biovisionary and Azor's Elocutors that literally win the game with no specific "prioritizing" targets since all this is dependent on the game-state. Cards like Phage the Untouchable and Master of Cruelties have specific "must be blocked" AI flags since they are very likely to win the game immediately if said action ie. blocking, is not done.

Lin Sivvi, Defiant Hero is only overpowered in your context, it can be safely ignored by pretty much every tournament-standard combo deck and quite a few AI decks so having a specific must-kill priority is not recommended.
Eh, I'd hardly call Masques block and limited "my context" since anyone who includes the block in his quest pool is playing it vs the AI, and if someone enables the full pool it will crop up in his drafts. And the situation where an AI has removal, and the player has Lin Sivvi in it's deck, it's highly unlikely that anything else in that deck will be a higher priority removal target than her, especially in constructed, because if she's in your deck she can either tutor everything else (including changelings and all sorts of Time Spiral stuff) and recur whatever is prioritized over her. So you can get situations where the AI which relies on removal will spend it on stuff that Lin Sivvi just brings back or brings another copy off (or she just stands there and tutors removal or recurs Aven Riftwatchers for endless blocking/life).

It can depend on game state, ofc, and combo decks can ignore any creature, also true, but the AI consistently passing her over in favor of other stuff doesn't work either.

Still, no need to discuss this here, I opened a thread for these things:

viewtopic.php?f=52&t=15434

The game could use a block specific removal priority list for limited if it's possible to implement it anyway. There's probably a card or two in any format which is a RL bomb that would never live if it could be chosen for removal by the AI, Lin Sivvi is just the most famous one. Most bombs don't have this problem due to having the right stats to draw removal, format defining utility bombs slip by and mess things up. Not all (or even more than one or two) are building blocks for constructed decks, but it still probably should be done.

EDIT: Plus they're closed and sorta well documented environments, you really can pinpoint problem cards in them if there are any.
---

My Shandalar deck pack folder is avaliable here:Dropbox
Leave feedback on particular decks here: Google doc
Ask for instructions, give feedback and complaints here: Thread
User avatar
lujo
 
Posts: 557
Joined: 20 Nov 2013, 13:17
Has thanked: 224 times
Been thanked: 70 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby lujo » 17 Sep 2014, 14:27

Living End returns cards which were exiled in other ways instead of just the cards which were exiled from the graveyard by it. It's not supposed to.
---

My Shandalar deck pack folder is avaliable here:Dropbox
Leave feedback on particular decks here: Google doc
Ask for instructions, give feedback and complaints here: Thread
User avatar
lujo
 
Posts: 557
Joined: 20 Nov 2013, 13:17
Has thanked: 224 times
Been thanked: 70 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby bevryde » 17 Sep 2014, 15:01

Forge still chooses "AI-incompatible" cards when creating a random deck for the AI oppoenent. (Constructed:Random Decks:Random generated Deck). E.g. it complained about Magma Giant.
User avatar
bevryde
 
Posts: 109
Joined: 06 Aug 2014, 04:01
Has thanked: 3 times
Been thanked: 2 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby Agetian » 17 Sep 2014, 15:43

excessum wrote:
drdev wrote:Pretty sure that issue was fixed by r27386.
I'm pretty sure this problem is still around... viewtopic.php?f=52&t=6333&start=3165#p161207. Here is another example with r27480
I tried to fix this issue in r27493, or at least circumvent it in a good enough way until someone can pinpoint the source of the issue somewhere deeper in the code. More details in the dev forum bug report thread.

- Agetian
Agetian
Programmer
 
Posts: 3486
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 569 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby darkdolphin » 17 Sep 2014, 15:48

Just wanna say thanks for fixing the card drawing bug in "human vs human" mode :D
darkdolphin
 
Posts: 3
Joined: 31 Oct 2013, 19:47
Has thanked: 0 time
Been thanked: 0 time

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby lujo » 17 Sep 2014, 22:32

r27493 doesn't have crash reports or cards stuck as visual artifacts after AI vs AI matches, but the cards are still flying in strange directions during them.

Also:

Spur Grappler somehow miraculously becomes a 4/3 creature instead of 4/2, when you have no untapped lands. Same thing for the AI, there wasn't anything in play that could cause it. (Oddly enough that guy is pretty relevant in Masques limited XD)
---

My Shandalar deck pack folder is avaliable here:Dropbox
Leave feedback on particular decks here: Google doc
Ask for instructions, give feedback and complaints here: Thread
User avatar
lujo
 
Posts: 557
Joined: 20 Nov 2013, 13:17
Has thanked: 224 times
Been thanked: 70 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby friarsol » 18 Sep 2014, 00:49

lujo wrote:Spur Grappler somehow miraculously becomes a 4/3 creature instead of 4/2, when you have no untapped lands. Same thing for the AI, there wasn't anything in play that could cause it. (Oddly enough that guy is pretty relevant in Masques limited XD)
Thanks. Looks like the script was wrong. Granting +2/+2 instead of +2/+1. Fixed in the latest.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby Goose » 18 Sep 2014, 01:04

Description: Occurs while loading the program. Tried deleting RES folder and reinstalling and still happening.
EOFException | Open
Code: Select all
Forge Version:    1.5.26-r27298Mu (mixed revisions detected; please update from the root directory)
Operating System: Mac OS X 10.9.4 x86_64
Java Version:     1.7.0_67 Oracle Corporation

main > Error loading Quest Data
java.io.EOFException: Unexpected end of ZLIB input stream
   at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:240)
   at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
   at java.util.zip.GZIPInputStream.read(GZIPInputStream.java:116)
   at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
   at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
   at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
   at java.io.InputStreamReader.read(InputStreamReader.java:184)
   at java.io.Reader.read(Reader.java:140)
   at forge.quest.io.QuestDataIO.loadData(QuestDataIO.java:116)
   at forge.control.FControl.initialize(FControl.java:216)
   at forge.view.Main.main(Main.java:51)
Goose
 
Posts: 7
Joined: 03 Aug 2014, 00:41
Has thanked: 3 times
Been thanked: 0 time

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby PalladiaMors » 18 Sep 2014, 01:15

I'm unable to play Jilt without the kicker cost. No matter which of the two options I choose when I try to cast it and the kicker popup shows up, Forge asks for a second target. All other cards with kicker I've used work perfectly, so I guess there may be some specific issue with Jilt's script?

General bug report | Open
Code: Select all
Forge Version:    1.5.26-r27298Mu (mixed revisions detected; please update from the root directory)
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_67 Oracle Corporation
PalladiaMors
 
Posts: 343
Joined: 12 Jul 2014, 17:40
Has thanked: 36 times
Been thanked: 22 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby friarsol » 18 Sep 2014, 01:33

PalladiaMors wrote:I'm unable to play Jilt without the kicker cost. No matter which of the two options I choose when I try to cast it and the kicker popup shows up, Forge asks for a second target. All other cards with kicker I've used work perfectly, so I guess there may be some specific issue with Jilt's script?
There's nothing wrong with the script, but the way multi-targeting Kicker is handled. If you choose the non-kicker mode, you can actually cast it without paying 2UR, but right now it incorrectly forces you to choose a second target (which sometimes is impossible, or unfavorable). I actually just reported this in the the snapshot builds thread. The damage won't actually be dealt, until we can resolve the issue.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby Marek14 » 18 Sep 2014, 04:53

Similar targeting thing is when you can cancel out of optional targeted triggered ability without choosing targets -- in some cases, for example with Horobi, Death's Wail, this has incorrect consequences.

EDIT: AI tapped Wall of Omens for my Tangle Wire, even though it had no fade counters.
Marek14
Tester
 
Posts: 2771
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 302 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby ZappaZ » 18 Sep 2014, 14:12

I have been trying out some decks in EDH with the latest release I could find from here: krazyweb net/forge/
(forge-gui-desktop-1.5.28-SNAPSHOT-r27503.tar.bz2)

EDIT: Reposted this in the Snapshot thread, thanks Fizanko

Playing with 1 AI with a random deck and myself using this deck:
tappedout net/mtg-decks/hear-me-roar-brimaz-commanderedh/

Description: I played Blind Obedience in my main phase and pressed ok.
ADDITION: I seem to be able to get this exact error again with 2 other decks involved.
I was pressing OK going from M1 to M2 and all that was on the table was 3 lands for AI and 2 lands + Sol Ring for me.

NullPointerException | Open
Code: Select all
Forge Version:    1.5.28-SNAPSHOT-r-1u
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_20 Oracle Corporation

java.lang.NullPointerException
   at forge.view.LocalGameView.writeCardToView(LocalGameView.java:486)
   at forge.view.LocalGameView.getCardView(LocalGameView.java:406)
   at forge.view.LocalGameView$3.apply(LocalGameView.java:421)
   at forge.view.LocalGameView$3.apply(LocalGameView.java:418)
   at forge.view.ViewUtil.transformIfNotNull(ViewUtil.java:134)
   at forge.view.LocalGameView.getCardViews(LocalGameView.java:426)
   at forge.view.LocalGameView.getPlayerView(LocalGameView.java:364)
   at forge.view.LocalGameView.getPlayerView(LocalGameView.java:336)
   at forge.view.LocalGameView.getPlayerTurn(LocalGameView.java:226)
   at forge.GuiDesktop.updatePhase(GuiDesktop.java:233)
   at forge.control.FControlGameEventHandler$1.run(FControlGameEventHandler.java:88)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
Description: AI played Denizen of the Deep and removed all creatures, then this error.

NullPointerException | Open
Code: Select all
Forge Version:    1.5.28-SNAPSHOT-r-1u
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_20 Oracle Corporation

java.lang.NullPointerException
   at forge.screens.match.TargetingOverlay.addArcsForCard(TargetingOverlay.java:163)
   at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:146)
   at forge.screens.match.TargetingOverlay.access$100(TargetingOverlay.java:55)
   at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:366)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintToOffscreen(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
   at javax.swing.BufferStrategyPaintManager.paint(Unknown Source)
   at javax.swing.RepaintManager.paint(Unknown Source)
   at javax.swing.JComponent._paintImmediately(Unknown Source)
   at javax.swing.JComponent.paintImmediately(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.access$1300(Unknown Source)
   at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
Description: Playing the following deck against generated deck AI and AI is declaring attackers.
tappedout net/mtg-decks/toolkit-sliver-commander/

ConcurrentModificationException | Open
Code: Select all
Forge Version:    1.5.28-SNAPSHOT-r-1u
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_20 Oracle Corporation

java.util.ConcurrentModificationException
   at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
   at java.util.ArrayList$Itr.next(Unknown Source)
   at forge.game.card.Card.getAbilityText(Card.java:2335)
   at forge.game.card.Card.getText(Card.java:1873)
   at forge.view.ViewUtil.writeNonDependentCardViewProperties(ViewUtil.java:79)
   at forge.view.LocalGameView.writeCardToView(LocalGameView.java:482)
   at forge.view.LocalGameView.getCardView(LocalGameView.java:406)
   at forge.view.LocalGameView$3.apply(LocalGameView.java:421)
   at forge.view.LocalGameView$3.apply(LocalGameView.java:418)
   at forge.view.ViewUtil.transformIfNotNull(ViewUtil.java:134)
   at forge.view.LocalGameView.getCardViews(LocalGameView.java:426)
   at forge.view.LocalGameView.getPlayerView(LocalGameView.java:364)
   at forge.view.LocalGameView.getPlayerView(LocalGameView.java:336)
   at forge.view.LocalGameView.getGameEntityView(LocalGameView.java:292)
   at forge.view.LocalGameView.getCombat(LocalGameView.java:183)
   at forge.view.LocalGameView.getCombat(LocalGameView.java:167)
   at forge.control.FControlGameEventHandler$2.run(FControlGameEventHandler.java:105)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
Description: Same deck as above, new AI deck. I was pressing cancel because I didn't have white mana to pay for attackin creatures that the AIs Norn's Annex demanded.

ConcurrentModificationException | Open
Code: Select all
Forge Version:    1.5.28-SNAPSHOT-r-1u
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_20 Oracle Corporation

java.util.ConcurrentModificationException
   at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
   at java.util.ArrayList$Itr.next(Unknown Source)
   at forge.view.ViewUtil.transformIfNotNull(ViewUtil.java:133)
   at forge.view.LocalGameView.getCardViews(LocalGameView.java:426)
   at forge.view.LocalGameView.getCombat(LocalGameView.java:183)
   at forge.view.LocalGameView.getCombat(LocalGameView.java:167)
   at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:366)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintToOffscreen(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
   at javax.swing.BufferStrategyPaintManager.paint(Unknown Source)
   at javax.swing.RepaintManager.paint(Unknown Source)
   at javax.swing.JComponent._paintImmediately(Unknown Source)
   at javax.swing.JComponent.paintImmediately(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.access$1300(Unknown Source)
   at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
imgur /HBs7Ymg <- Screenshot of last error.

Sidenote: Why does the order of the cards in my hand reset in EDH when i get to Mainphase 1 and 2? (most of the time)
In normal constructed i usually put all my lands to the left while I'm thinking,
but in EDH it resets.
EDIT: Got the same behavior in normal too, did not have this in 1.5.26.

PS: new user, had to slaughter the links, sorry.
Last edited by ZappaZ on 18 Sep 2014, 14:39, edited 2 times in total.
ZappaZ
 
Posts: 92
Joined: 26 Jul 2014, 05:37
Has thanked: 26 times
Been thanked: 2 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby Fizanko » 18 Sep 2014, 14:25

ZappaZ wrote:I'm not sure if theres another place I should post these reports
or if theres something about the Commander mode I'm missing..
This the bug report thread dedicaced to bugs encountered when using snapshot builds of Forge :
www.slightlymagic.net/forum/viewtopic.php?f=52&t=6333
probably outdated by now so you should avoid : Innistrad world for Forge (updated 17/11/2014)
Duel Decks for Forge - Forge custom decks (updated 25/10/2014)
User avatar
Fizanko
Tester
 
Posts: 780
Joined: 07 Feb 2014, 11:24
Has thanked: 155 times
Been thanked: 94 times

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby awebgsu » 18 Sep 2014, 23:59

Found a bug in the newest snapshot (27537). Hovering over Courser of Kruphix does not reveal the top card.
awebgsu
 
Posts: 6
Joined: 24 Nov 2013, 01:38
Has thanked: 1 time
Been thanked: 0 time

Re: Forge Beta: 09-12-2014 ver 1.5.26

Postby elcnesh » 19 Sep 2014, 07:49

awebgsu wrote:Found a bug in the newest snapshot (27537). Hovering over Courser of Kruphix does not reveal the top card.
It's not a bug, it's a feature!

...

Seriously though, you now can see the top card by clicking on the library icon ;)
elcnesh
 
Posts: 290
Joined: 16 May 2014, 15:11
Location: Netherlands
Has thanked: 34 times
Been thanked: 92 times

PreviousNext

Return to Forge

Who is online

Users browsing this forum: No registered users and 59 guests


Who is online

In total there are 59 users online :: 0 registered, 0 hidden and 59 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 59 guests

Login Form