NullpoMino

Thread in 'Discussion' started by Caithness, 18 Aug 2009.

  1. NullNoname

    NullNoname NullpoMino developer

    NullpoMino Version 7.2.0 (2010/06/19)

    New version is out:

    Version 7.2.0 (2010/06/19)
    #This version is NO LONGER compatible with 7.1.* netplay server.
    +Slick/SDL: Added new title screen. (Thanks Zircean!)
    +Swing/Slick/SDL: Added "Outline Ghost Piece" option. If enabled, ghost piece will be outline-styled instead of darker image of the piece.
    +NET-VS MAP EDIT: Added "GRAY->?" tool. When used, it will change all gray blocks on the field to different colors.
    +NetPlay/NetServer: It now compresses rule, map, and (if needed) field data. It will reduce a lot of packet size.
    -Slick: Restores title-bar texts when you come back to title screen.
    (Previously, name of game mode was still displayed even if you come back to the title screen)
    -NetPlay: Fixed tripcode spoof bug. (Thanks Wojtek!)
    -NetPlay: Fixed a bug that room list doesn't get cleared after you disconnect. (Thanks hebo-MAI!)
    -NetServer: Fixed a CPU 100% causing bug on onAccept()
    -GRADE MANIA 2: Leaderboard is no longer displayed when 20G option is used. (Thanks 2ch thread >>779!)
    *Updated hebo-MAI's rule, "StandardGIZA". Now it has faster softdrop speed.
    *AIs no longer not affect leaderboards. Replay file is still created. (Thanks SWR!)
    *[Internal change] All AIs (including PoochyBot) now extends DummyAI class instead of implementing AIPlayer interface.
    So, no changes are required to AIs when AIPlayer adds something.
    *[Internal change] PoochyBot/Crypt: Moved to different packages (net.tetrisconcept.poochy.nullpomino.ai and org.cacas.java.gnu.tools, respectively)

    * Download Link *

    I want more opinions about source code license.
    I separated external libraries to different packages so these can be distributed independently and maybe can apply different license than the main source code tree.
    Then, what license should the main source code tree use? I think GPL or BSD are suitable to use.

    Anyway, thanks for supporting NullpoMino!
     
    Last edited: 19 Jun 2010
  2. Re: NullpoMino - now with netplay!

    I'll second the use of the BSD license.
     
  3. Re: NullpoMino - now with netplay!

    I wonder why i got credited for new title screen. :)
     
  4. NullNoname

    NullNoname NullpoMino developer

    Re: NullpoMino - now with netplay!

    Ouch. The title screen is created by Zircean. Sorry dodd(Wojtek) and Zircean :oops:
     
  5. Re: NullpoMino - now with netplay!

    I'm for BSD too.
    Thanks for answering my email.
     
  6. Re: NullpoMino - now with netplay!

    Yeah, let's go for BSD... Also, don't worry about crediting the title screen :p It's not a problem.
     
  7. Re: NullpoMino - now with netplay!

    I like BSD as well.
     
  8. SWR

    SWR

    Re: NullpoMino - now with netplay!

    I am happy that you keep working on this NullNoName. Your efforts truly show it.
    Anyway, I have two more things I want to bring up. A friend of mine was working on adding individual music directories for each mode, sort of to keep things interesting. I was wondering what you thought of this. Also, would it be possible to allow for rule change when selecting a mode rather than having to go to the options menu. I find it cumbersome to have to go back and forth on rule sets when I, say, play Speed Mania 2, to Grade Mania, to Speed Mania, etc. Just a thought. I'm sure there's some preload stuff that would limit this though (just a guess).
     
  9. Re: NullpoMino - now with netplay!

    Very good suggestion. If i want to play Grade mania 3 with classic 3 rule, and play netplay with standard zero rule switching rules back and forth in options is kinda annoying.
     
  10. Re: NullpoMino - now with netplay!

    Sorry, I've barely been in front of the computer this weekend - but I'm back home now and I've rehosted the latest version of NullpoMino. I'm terribly sorry for the delay.

    http://nihon.se/NullpoMino/NullpoMino7.2.0.rar
     
  11. Re: NullpoMino - now with netplay!

    I would also love to be able to select a rule set inside that final Options screen for exactly the same reasons as SWR and dodd above. The modes that I play mean I also swap back and forth between Classic 2 and 3 all the time.

    Thank you for all the effort in making NullpoMino.
     
  12. Re: NullpoMino - now with netplay!

    Some more feature requests:
    * (option?) disable the game over/hurry up and other sound effects when spectating
    * a tab to switch to the main room while you are in a game room (useful to know who else is on the server and to tell people to join your room)
    * when spectating, show what pieces players are holding
     
  13. Re: NullpoMino - now with netplay!

    Okay, so I was playing some netplay, and then my client suddenly quit out and I found this nice file (hs_err_pid4364.txt):

    Code:
    #
    # A fatal error has been detected by the Java Runtime Environment:
    #
    #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x68118690, pid=4364, tid=4532
    #
    # JRE version: 6.0_18-b07
    # Java VM: Java HotSpot(TM) Client VM (16.0-b13 mixed mode, sharing windows-x86 )
    # Problematic frame:
    # C  [SDL.dll+0x18690]
    #
    # If you would like to submit a bug report, please visit:
    #   http://java.sun.com/webapps/bugreport/crash.jsp
    # The crash happened outside the Java Virtual Machine in native code.
    # See problematic frame for where to report the bug.
    #
    
    ---------------  T H R E A D  ---------------
    
    Current thread (0x00386800):  JavaThread "main" [_thread_in_native, id=4532, stack(0x003b0000,0x00400000)]
    
    siginfo: ExceptionCode=0xc0000005, reading address 0x3f25863c
    
    Registers:
    EAX=0xd4000000, EBX=0xff000000, ECX=0x0330d49c, EDX=0x3f25863c
    ESP=0x003ff440, EBP=0x003ff460, ESI=0x00000007, EDI=0x00000009
    EIP=0x68118690, EFLAGS=0x00010287
    
    Top of Stack: (sp=0x003ff440)
    0x003ff440:   00000000 0000004b 00000238 00000000
    0x003ff450:   00000048 000008e0 3f200e30 02e54c80
    0x003ff460:   003ff4f0 681111f4 003ff4a8 003863a8
    0x003ff470:   00386ed0 00386eec 003872c4 003ffd60
    0x003ff480:   003ff5a4 0000000a 00000000 003ff4d0
    0x003ff490:   000008e0 00000000 0011f4f8 00000000
    0x003ff4a0:   00000000 00000001 3f257da0 00000048
    0x003ff4b0:   00000011 00000000 03308de0 00000048 
    
    Instructions: (pc=0x68118690)
    0x68118680:   41 40 8b 02 21 d8 74 36 39 d8 0f 84 e9 00 00 00
    0x68118690:   0f 6e 02 0f 6e 09 0f 6e d0 0f d2 d5 0f 61 d2 0f 
    
    
    Stack: [0x003b0000,0x00400000],  sp=0x003ff440,  free space=13d003fef74k
    Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
    C  [SDL.dll+0x18690]
    C  [SDL.dll+0x111f4]
    C  [SDL.dll+0x28b4a]
    C  [SDL.dll+0x28dc6]
    C  [SDLJava.dll+0x3637]
    C  [SDLJava.dll+0x6bf4]
    J  sdljava.x.swig.SWIG_SDLVideoJNI.SWIG_SDL_BlitSurface_FAST(JIIIIJIIII)I
    J  sdljava.video.SDLSurface.blitSurface(Lsdljava/video/SDLRect;Lsdljava/video/SDLSurface;Lsdljava/video/SDLRect;)I
    J  org.game_host.hebo.nullpomino.gui.sdl.NormalFontSDL.printTTFFont(IILjava/lang/String;I)V
    J  org.game_host.hebo.nullpomino.gui.sdl.RendererSDL.drawTTFDirectFont(Lorg/game_host/hebo/nullpomino/game/play/GameEngine;IIILjava/lang/String;I)V
    J  org.game_host.hebo.nullpomino.game.subsystem.mode.NetVSBattleMode.renderLast(Lorg/game_host/hebo/nullpomino/game/play/GameEngine;I)V
    J  org.game_host.hebo.nullpomino.game.play.GameEngine.render()V
    J  org.game_host.hebo.nullpomino.gui.sdl.StateNetGameSDL.render(Lsdljava/video/SDLSurface;)V
    J  org.game_host.hebo.nullpomino.gui.sdl.NullpoMinoSDL.run()V
    j  org.game_host.hebo.nullpomino.gui.sdl.NullpoMinoSDL.main([Ljava/lang/String;)V+499
    v  ~StubRoutines::call_stub
    V  [jvm.dll+0xf072c]
    V  [jvm.dll+0x17fd51]
    V  [jvm.dll+0xf07ad]
    V  [jvm.dll+0xf9e55]
    V  [jvm.dll+0x101aad]
    C  [javaw.exe+0x2155]
    C  [javaw.exe+0x8614]
    C  [kernel32.dll+0xb699]
    
    Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
    J  sdljava.x.swig.SWIG_SDLVideoJNI.SWIG_SDL_BlitSurface_FAST(JIIIIJIIII)I
    J  sdljava.video.SDLSurface.blitSurface(Lsdljava/video/SDLRect;Lsdljava/video/SDLSurface;Lsdljava/video/SDLRect;)I
    J  org.game_host.hebo.nullpomino.gui.sdl.NormalFontSDL.printTTFFont(IILjava/lang/String;I)V
    J  org.game_host.hebo.nullpomino.gui.sdl.RendererSDL.drawTTFDirectFont(Lorg/game_host/hebo/nullpomino/game/play/GameEngine;IIILjava/lang/String;I)V
    J  org.game_host.hebo.nullpomino.game.subsystem.mode.NetVSBattleMode.renderLast(Lorg/game_host/hebo/nullpomino/game/play/GameEngine;I)V
    J  org.game_host.hebo.nullpomino.game.play.GameEngine.render()V
    J  org.game_host.hebo.nullpomino.gui.sdl.StateNetGameSDL.render(Lsdljava/video/SDLSurface;)V
    J  org.game_host.hebo.nullpomino.gui.sdl.NullpoMinoSDL.run()V
    j  org.game_host.hebo.nullpomino.gui.sdl.NullpoMinoSDL.main([Ljava/lang/String;)V+499
    v  ~StubRoutines::call_stub
    
    ---------------  P R O C E S S  ---------------
    
    Java Threads: ( => current thread )
      0x030df400 JavaThread "Timer-1" daemon [_thread_blocked, id=5340, stack(0x079c0000,0x07a10000)]
      0x03090800 JavaThread "Thread-6" daemon [_thread_in_native, id=4420, stack(0x05ec0000,0x05f10000)]
      0x0311e400 JavaThread "TimerQueue" daemon [_thread_blocked, id=6060, stack(0x07970000,0x079c0000)]
      0x02b69400 JavaThread "D3D Screen Updater" daemon [_thread_blocked, id=5448, stack(0x07270000,0x072c0000)]
      0x03074c00 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=5260, stack(0x07220000,0x07270000)]
      0x02ae8c00 JavaThread "AWT-Windows" daemon [_thread_in_native, id=5848, stack(0x06fb0000,0x07000000)]
      0x02ae7c00 JavaThread "AWT-Shutdown" [_thread_blocked, id=5412, stack(0x06f60000,0x06fb0000)]
      0x03057800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=5796, stack(0x06f10000,0x06f60000)]
      0x02afd400 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=5360, stack(0x02db0000,0x02e00000)]
      0x02afa800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=5216, stack(0x02d60000,0x02db0000)]
      0x02af5c00 JavaThread "Attach Listener" daemon [_thread_blocked, id=1712, stack(0x02d10000,0x02d60000)]
      0x02af4400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5844, stack(0x02cc0000,0x02d10000)]
      0x02aefc00 JavaThread "Finalizer" daemon [_thread_blocked, id=252, stack(0x02c70000,0x02cc0000)]
      0x02aeb000 JavaThread "Reference Handler" daemon [_thread_blocked, id=4836, stack(0x02c20000,0x02c70000)]
    =>0x00386800 JavaThread "main" [_thread_in_native, id=4532, stack(0x003b0000,0x00400000)]
    
    Other Threads:
      0x02ae9c00 VMThread [stack: 0x02bd0000,0x02c20000] [id=4496]
      0x02b00000 WatcherThread [stack: 0x02e00000,0x02e50000] [id=5408]
    
    VM state:not at safepoint (normal execution)
    
    VM Mutex/Monitor currently owned by a thread: None
    
    Heap
     def new generation   total 4992K, used 31K [0x22970000, 0x22ed0000, 0x27ec0000)
      eden space 4480K,   0% used [0x22970000, 0x22971398, 0x22dd0000)
      from space 512K,   5% used [0x22dd0000, 0x22dd6868, 0x22e50000)
      to   space 512K,   0% used [0x22e50000, 0x22e50000, 0x22ed0000)
     tenured generation   total 10948K, used 5093K [0x27ec0000, 0x28971000, 0x32970000)
       the space 10948K,  46% used [0x27ec0000, 0x283b97d8, 0x283b9800, 0x28971000)
     compacting perm gen  total 12288K, used 3053K [0x32970000, 0x33570000, 0x36970000)
       the space 12288K,  24% used [0x32970000, 0x32c6b650, 0x32c6b800, 0x33570000)
        ro space 10240K,  51% used [0x36970000, 0x36e97b58, 0x36e97c00, 0x37370000)
        rw space 12288K,  54% used [0x37370000, 0x37a04ce0, 0x37a04e00, 0x37f70000)
    
    Dynamic libraries:
    0x00400000 - 0x00424000 	C:\WINDOWS\system32\javaw.exe
    0x7c900000 - 0x7c9b2000 	C:\WINDOWS\system32\ntdll.dll
    0x7c800000 - 0x7c8f5000 	C:\WINDOWS\system32\kernel32.dll
    0x77dd0000 - 0x77e6b000 	C:\WINDOWS\system32\ADVAPI32.dll
    0x77e70000 - 0x77f02000 	C:\WINDOWS\system32\RPCRT4.dll
    0x77fe0000 - 0x77ff1000 	C:\WINDOWS\system32\Secur32.dll
    0x7e410000 - 0x7e4a0000 	C:\WINDOWS\system32\USER32.dll
    0x77f10000 - 0x77f58000 	C:\WINDOWS\system32\GDI32.dll
    0x7c340000 - 0x7c396000 	C:\Program Files\Java\jre6\bin\msvcr71.dll
    0x6d800000 - 0x6da97000 	C:\Program Files\Java\jre6\bin\client\jvm.dll
    0x76b40000 - 0x76b6d000 	C:\WINDOWS\system32\WINMM.dll
    0x6d7b0000 - 0x6d7bc000 	C:\Program Files\Java\jre6\bin\verify.dll
    0x6d330000 - 0x6d34f000 	C:\Program Files\Java\jre6\bin\java.dll
    0x6d290000 - 0x6d298000 	C:\Program Files\Java\jre6\bin\hpi.dll
    0x76bf0000 - 0x76bfb000 	C:\WINDOWS\system32\PSAPI.DLL
    0x6d7f0000 - 0x6d7ff000 	C:\Program Files\Java\jre6\bin\zip.dll
    0x10000000 - 0x1001f000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDLJava.dll
    0x77c10000 - 0x77c68000 	C:\WINDOWS\system32\MSVCRT.dll
    0x68100000 - 0x6815d000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDL.dll
    0x5ad70000 - 0x5ada8000 	C:\WINDOWS\system32\uxtheme.dll
    0x74720000 - 0x7476b000 	C:\WINDOWS\system32\MSCTF.dll
    0x73f10000 - 0x73f6c000 	C:\WINDOWS\system32\DSOUND.DLL
    0x774e0000 - 0x7761d000 	C:\WINDOWS\system32\ole32.dll
    0x77c00000 - 0x77c08000 	C:\WINDOWS\system32\VERSION.dll
    0x72280000 - 0x722aa000 	C:\WINDOWS\system32\DINPUT.DLL
    0x688f0000 - 0x688f9000 	C:\WINDOWS\system32\HID.DLL
    0x77920000 - 0x77a13000 	C:\WINDOWS\system32\SETUPAPI.DLL
    0x76c30000 - 0x76c5e000 	C:\WINDOWS\system32\WINTRUST.dll
    0x77a80000 - 0x77b14000 	C:\WINDOWS\system32\CRYPT32.dll
    0x77b20000 - 0x77b32000 	C:\WINDOWS\system32\MSASN1.dll
    0x76c90000 - 0x76cb8000 	C:\WINDOWS\system32\IMAGEHLP.dll
    0x02f90000 - 0x02f99000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDLJava_ttf.dll
    0x6f4c0000 - 0x6f4cc000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDL_ttf.dll
    0x67b80000 - 0x67bee000 	C:\Java\workspace\NullpoMino7_2_0\lib\libfreetype-6.dll
    0x62e80000 - 0x62e99000 	C:\Java\workspace\NullpoMino7_2_0\lib\zlib1.dll
    0x02fa0000 - 0x02fab000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDLJava_mixer.dll
    0x61700000 - 0x6174b000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDL_mixer.dll
    0x72d20000 - 0x72d29000 	C:\WINDOWS\system32\wdmaud.drv
    0x72d10000 - 0x72d18000 	C:\WINDOWS\system32\msacm32.drv
    0x77be0000 - 0x77bf5000 	C:\WINDOWS\system32\MSACM32.dll
    0x77bd0000 - 0x77bd7000 	C:\WINDOWS\system32\midimap.dll
    0x73ee0000 - 0x73ee4000 	C:\WINDOWS\system32\KsUser.dll
    0x69b40000 - 0x69b82000 	C:\Java\workspace\NullpoMino7_2_0\lib\mikmod.dll
    0x02fc0000 - 0x02fc8000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDLJava_image.dll
    0x62e40000 - 0x62e61000 	C:\Java\workspace\NullpoMino7_2_0\lib\SDL_image.dll
    0x69c80000 - 0x69ca6000 	C:\Java\workspace\NullpoMino7_2_0\lib\libpng12-0.dll
    0x6d610000 - 0x6d623000 	C:\Program Files\Java\jre6\bin\net.dll
    0x71ab0000 - 0x71ac7000 	C:\WINDOWS\system32\WS2_32.dll
    0x71aa0000 - 0x71aa8000 	C:\WINDOWS\system32\WS2HELP.dll
    0x71a50000 - 0x71a8f000 	C:\WINDOWS\System32\mswsock.dll
    0x76f20000 - 0x76f47000 	C:\WINDOWS\system32\DNSAPI.dll
    0x76fb0000 - 0x76fb8000 	C:\WINDOWS\System32\winrnr.dll
    0x76f60000 - 0x76f8c000 	C:\WINDOWS\system32\WLDAP32.dll
    0x605d0000 - 0x605d9000 	C:\WINDOWS\system32\mslbui.dll
    0x77120000 - 0x771ab000 	C:\WINDOWS\system32\OLEAUT32.DLL
    0x76fc0000 - 0x76fc6000 	C:\WINDOWS\system32\rasadhlp.dll
    0x662b0000 - 0x66308000 	C:\WINDOWS\system32\hnetcfg.dll
    0x71a90000 - 0x71a98000 	C:\WINDOWS\System32\wshtcpip.dll
    0x6d000000 - 0x6d14a000 	C:\Program Files\Java\jre6\bin\awt.dll
    0x73000000 - 0x73026000 	C:\WINDOWS\system32\WINSPOOL.DRV
    0x76390000 - 0x763ad000 	C:\WINDOWS\system32\IMM32.dll
    0x773d0000 - 0x774d3000 	C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\COMCTL32.dll
    0x77f60000 - 0x77fd6000 	C:\WINDOWS\system32\SHLWAPI.dll
    0x6d230000 - 0x6d284000 	C:\Program Files\Java\jre6\bin\fontmanager.dll
    0x4fdd0000 - 0x4ff76000 	C:\WINDOWS\system32\d3d9.dll
    0x05d40000 - 0x05d46000 	C:\WINDOWS\system32\d3d8thk.dll
    0x7c9c0000 - 0x7d1d6000 	C:\WINDOWS\system32\shell32.dll
    0x6d630000 - 0x6d639000 	C:\Program Files\Java\jre6\bin\nio.dll
    
    VM Arguments:
    jvm_args: -Djava.library.path=lib 
    java_command: org.game_host.hebo.nullpomino.gui.sdl.NullpoMinoSDL
    Launcher Type: SUN_STANDARD
    
    Environment Variables:
    PATH=lib;c:\devkitPro\msys\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Python22;C:\Program Files\Common Files\DivX Shared\;C:\Program Files\MySQL\MySQL Server 5.0\bin\bin;C:\Program Files\TortoiseSVN\bin;;C:\PROGRA~1\COMMON~1\MUVEET~1\030625;C:\PROGRA~1\COMMON~1\MUVEET~1\030625;C:\WINDOWS\SysWOW64
    USERNAME=HP_Administrator
    OS=Windows_NT
    PROCESSOR_IDENTIFIER=x86 Family 15 Model 43 Stepping 1, AuthenticAMD
    
    
    
    ---------------  S Y S T E M  ---------------
    
    OS: Windows XP Build 2600 Service Pack 2
    
    CPU:total 2 (2 cores per cpu, 1 threads per core) family 15 model 43 stepping 1, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnow, 3dnowext
    
    Memory: 4k page, physical 2095596k(535372k free), swap 4032692k(2427252k free)
    
    vm_info: Java HotSpot(TM) Client VM (16.0-b13) for windows-x86 JRE (1.6.0_18-b07), built on Dec 17 2009 13:35:55 by "java_re" with MS VC++ 7.1 (VS2003)
    
    time: Tue Jun 22 01:49:44 2010
    elapsed time: 1017 seconds
    
    
    So... yeah...
     
  14. Re: NullpoMino - now with netplay!

    Hey NullpoNoName!

    The effect on level 12 of Gem Mania is incorrect. It's really difficult the way it is, and not like real Sakura mode. This video shows the correct effect. I know it's a small thing, but it would be cool if it was fixed. Thanks! I love Nullpomino! (Especially for Classic3 20G versus... :D)
     
  15. Re: NullpoMino - now with netplay!

    yo, updated site, etc.
    maybe I'll bring the server back later, if it turns out the 100% cpu bug is gone for good - hd should be enough for now
     
  16. Zaphod77

    Zaphod77 Resident Misinformer

    Re: NullpoMino - now with netplay!

    WOn't run at all. :(

    "Could not find the main class. Program will now exit."

    nevermind, had to update my java. Runs now.

    Impressed with Marthon+. finally I can play that mode with ARS.

    Some more ideas for the TODO list. These are game modes I believe to be notable.

    CLASSIC-NEW: Like Classic, except that it keeps getting faster, and after it reaches 20g, lock delay gets smaller and smaller. A game that japanese people play like monkeys on their PS2. :)

    GRAVITY MANIA: gravity is applied to all fragments after a piece is dropped, allowing for large combos. It's a marathon game. Two scoring options. one is to give bonus for each step of the cascade, and the other choice is to encourage large clears instead, by having exponential scoring.

    COLOR MANIA: like a combination of gravity mania and drill mania, but pieces are made up of multiple colors sometimes, and blocks that are the same color stick together. If 25 or more of the same piece color stick together, they are removed from the playfield. floating garbage is placed on the playfield, and you must clear the bottom line to beat each level. Additionally, there is a time limit for each level, which either must be beat to finish the level, or gives you bonus points for beating. (easy or hard mode)

    SQUARE MANIA: Scoring is based purely on lines cleared, but arranging 4 identical pieces into a square shape will merge them into a golden square, and mixed groups of 4 pieces get merged into a silver square. lines cleared with squares in them count as additional lines. Tetris scores 5 lines, each silver strip scores 5 lines, each gold strip scores 10 lines. If a piece locks in a position such that it could not move in any direction from where it locked, and clears a line, then all pieces below it are broken apart into separate blocks, and gravity is applied to them. Any liens formed by the application of gravity are cleared, with each line beyond the third counting two lines. Finally, the blocks above the cleared line are lowered down as a group as low as possible. Game type uses 63 piece BAG randomizer regardless of rule. Speed increases with every 10 real lines cleared, but increases very slowly (possibly it increases by a different method?). Scoring does NOT increase as levels are gained. Inspired by a certain game for the Nintendo 64.

    BOMB MANIA: lines are not cleared when they are filled. Each piece contains one bomb, and every pieces you get one made up completely of bombs. Forming a solid line detonates all bombs in the line. The more lines are filled in at once, the more powerful the explosions are. Lines without bombs are counted in determining bomb power. Lines cleared after gravity is applied also count if another explosion is activated by them. A 2x2 square of bombs merges into a large bomb, which will extend to the edge of the screen if it is in the center. In easy mode, pieces made of 3 and of 2 blocks also show. Bombs caught in explosions detonate, at same power as initial explosion. After all explosions, gravity is applied, but all pieces stuck before gravity is applied remain stuck. In hard mode, pentominos also make their appearance. This is playable as a stage clearing game, or as a puzzle game. As a stage clearing game, you are limited to 99 pieces per stage, and must score a bravo with these pieces, but you can gain additional pieces by making large line clears and by forming large bombs. As a puzzle game, you have a small fixed sequence of pieces with which to score the bravo. Alternatively, a marathon version could be made, where you have to set up large combos to gain more pieces to play with.

    Bomb explosion patterns
    Code:
    lines	Size		Score
    1	7x1		+0
    2	7x3	 	+0
    3	7x5	 	+2
    4	7x7	 	+4
    5	9x9	 	+10
    6	11x11		+40
    7	11x11		+100
    8	13x13		+200
    9	13x13		+300
    10	15x15		+400
    11	15x15		+500
    12	15x15		+600
    13	15x15		+700
    14	15x15		+800
    15	15x15		+900
    16+	15x15		+999
    
    Also you get +1 when creating or detonating a large bomb. The large bomb is always 10x8

    Clears larger than 4 lines are very difficult to set up, but it can be done.
     
    Last edited: 25 Jun 2010
  17. Re: NullpoMino - now with netplay!

    For my part I'd very much like a short description of what each mode is about.

    Anyway, great work NullNoname !
     
  18. Re: NullpoMino - now with netplay!

    This mode is already in development. However, you can't force a randomizer from the Mode class itself, because that's governed by the ruleset the player has currently selected. Mode has no jurisdiction over that, haha.

    However, that doesn't stop one from suggesting a ruleset to use with a mode...
     
  19. Zaphod77

    Zaphod77 Resident Misinformer

    Re: NullpoMino - now with netplay!

    Short descriptions.

    CLASSIC-NEW: Tetris New Century EX mode clone.
    GRAVITY MANIA: Cascade/Quadra clone.
    COLOR MANIA:The Next Tetris clone
    SQUARE MANIA: The New Tetris clone.
    BOMB MANIA: Bombliss/Tetris Blast clone

    :)
     

Share This Page