Monkey-X: Yame – yet another monkey editor ;-)

yame-editor-monkeyIch hatte Zeit und Lust einen Editor oder eine mini IDE für Monkey-X zu schreiben. Dieser verwendet als Basis das MacGap Projekt. Um Zugriff auf das lokale Dateisystem zu bekommen wurde dieses von mir leicht modifiziert. MacGap selbst ist ähnlich zu PhoneGap ein HTML5 Wrapper in dem HTML5 Anwendungen auf dem Desktop laufen können.

Als Herz des Editors kommt ACE zum Einsatz, dieser wurde um einen neuen Highlighting Modus für Monkey erweitert. Codefolding wäre theoretischer weise möglich, aber da steige ich ganz ehrlich gesagt gerade nicht ganz durch ;o)

Ziel war es die Mac typischen Shortcuts und Drag’n’Drop Funktionalität zu haben und den Editor selbst minimalistisch zu halten. Dieser wurde von mir auf den  Name (yet another monkey editor) getauft ;-)

Download:
https://www.motions-media.de/developing/yame/Yame.app.zip

Sources:
http://github.com/samowitsch/macgap/tree/yame
http://github.com/samowitsch/ace/tree/monkey

Monkey-X: Game Template

Import mojo
Function Main()
	New Game
End

Class Game Extends App

	'summary:The OnCreate Method is called when mojo has been initialized and the application has been successfully created.
	Method OnCreate()
	
		'Set how many times per second the game should update and render itself
		SetUpdateRate(60)
	
	End
	
	'summary: This method is automatically called when the application's update timer ticks. 
	Method OnUpdate()
		
	End
	
	'summary: This method is automatically called when the application should render itself, such as when the application first starts, or following an OnUpdate call. 
	Method OnRender()
		
	End

	'summary: This method is called instead of OnRender when the application should render itself, but there are still resources such as images or sounds in the process of being loaded. 
	Method OnLoading()
		
	End
	
	'summary: This method is called when the application's device window size changes. 
	Method OnResize()
		
	End
	
	'#REGION Code to handle susped status of the game goes here
	
	'summary: OnSuspend is called when your application is about to be suspended. 
	Method OnSuspend()
	
	End
	
	'summary: OnResume is called when your application is made active again after having been in a suspended state. 
	Method OnResume()
		
	End	
	'#END REGION
	
	'#REGION Code to handle game closing goes here:
	
	'summary: This method is called when the application's 'close' button is pressed. 
	Method OnClose()
		Super.OnClose()
	End

	'summary:This method is called when the application's 'back' button is pressed. 
	Method OnBack()
		Super.OnBack()
	End
	
	'#END REGION

End

Quelle: Template

Monkey-X: Template Command line tool

Import commandlineapp

'summary: This is the command line tool starting point:
Function Main()	
	Local tool:= New CommandLineTool()
End

'summary: This class handles the launching and parameters of the command line tool
Class CommandLineTool Extends CommandLineApp

	'summary: This is called when the command line tool launches.
	Method New()
	
		#REM
		Notice there are several field defined in this class, such as assemblyLocation, assemblyName and  parameters.
			- Self.assemblyName contains the name of the tool executable file (IE. the EXE file in windows os)
			- Self.assemblyLocation contains the path in the filesystem where the tool is located.
			- Self.paramters is a string array with any parameter passed to the tool. If no parameter is present, this array is of length zero.
		#END
		
		'Place the command line tool code here:
		
	End

End
Import brl.filepath
Import os

'summary: This class handles the launching and parameters of the command line tool
Class CommandLineApp Abstract

	'summary: This field contains the name of this tool assembly. That is, in windows, the EXE file of this tool.
	Field assemblyName:String

	'summary: This field contains the location in the file system where this tool is stored.
	Field assemblyLocation:String

	'summary: This array of strings contains all the paramters passed to this command line tool from the terminal or console.<br>If none is passed, this array will be of length zero.
	Field parameters:String[]

	Method New()
	
		'this is the tool executable name (on windows, the EXE file name):
		assemblyName = filepath.StripDir(os.AppArgs[0])
	
		'This is the tool executable path, the folder where the assembly is located:
		assemblyLocation = filepath.ExtractDir(os.AppArgs[0])
		
		'We get the list of parameters
		parameters = os.AppArgs[1 ..]
	
	End

	'summary: Use this method to abruptly end current application.<br>The "success" parameter may be set to true or false depending of the cause of the tool being ended.
	Method EndApplication(success:Bool)
		If success Then os.ExitApp(0) Else os.ExitApp(-1)
	End
	
End

 

Quelle: Templates

Monkey-X: Monkey einmal ganz anders

Eigentlich wollte ich ein weiteres Gamereview über Monkey-X Entwicklungen schreiben, und nun kommt es komplett anders ;-)

Im Monkey-X Forum bin ich über folgenden Beitrag gestolpert in dem über eine App berichtet wird die Monkey nicht nutzt um ein Spiel zu programmieren. bodewo7 ist eine Präsentations-App für einen Bodenbelaghersteller die eindrucksvoll beweist wie man Monkey-X auch anders nutzen kann. Sehr gut umgesetzt mit Mojo und einer erweiterten Version des fantomEngine 2d Game Frameworks.

[slideshow_deploy id=’1493′]

Games: Tiny Thor für iOS

Und es geht wieder weiter im Reigen der Monkey X entwickelten Spiele. Dieses Spiel ist initial auf der Ludum Dare 28 entstanden und hat es dank Monkey-X mittlerweile in den iTunes App Store geschafft.

Bei Tiny Thor handelt es sich ebenfalls um einen Retro-Plattformen wie z. B. Bloo Kid 2. Es gilt Thor durch diverse Welten zu steuern und als einzige Waffe steht dessen Hammer zur Verfügung, und nur dieser eine Hammer! Ist dieser verloren ist ein weiter kommen recht schwer. Mit diesem gilt es Wände, Decken, etc.  zu zertrümmern um im Level weiter zu kommen, oder Gegner aus dem Weg zu räumen.

Das kostenlose Spiel kann über InApp-Käufe um weitere Features erweitert werden bzw. die sehr prägnanten Werbeeinblendungen können entfernt werden. Jeder Jump’n’Run Fan sollte einen Blick auf Tiny Thor werfen.

[slideshow_deploy id=’1449′]

Games: Driller Bunny für iOS

Es geht wieder weiter mit der Vorstellung von Spielen die mit Monkey X programmiert wurden. Dieses mal handelt es sich im Spiel Driller Bunny um einen kleinen Hasen der sich in die Erde buddelt um nach Diamanten zu suchen.

Gesteuert wird dieser durch das Neigen des iPhones und gräbt dann in die gewünschte Richtung. Der Schwierigkeitsgrad steigt stetig. Das eine mal ist ein massiver Fels im Weg oder es muss besonders genau gegraben werden.  Driller Bunny ist ein nettes Casual Game für Zwischendurch und sein Geld allemal wert.

Man muss auch mal ein Herz für Entwickler haben ;-)

[slideshow_deploy id=’1430′]

Games: Pirate Solitair für iOS

Tja, was soll ich sagen Monkey X und kein Ende in Sicht ;-) Ich will nun Pirate Solitair vorstellen, einen Solitair Ableger der einen wirklich in Beschlag nimmt!

Berufsbedingt musste ich eine Zeit lang im Zug pendeln und Pirate Solitair hat mir dabei die Zeit verkürzt.

Schön gezeichnete Grafiken, gechillte Piratenmusik und ein sehr gute Gameplay bietet dieses Game. Es wäre wirklich sehr zu empfehlen, nur leider ist es nicht mehr im Apple App Store erhältlich. Wer dieses Spiel noch hat wird leider feststellen dass dieses unter iOS 7 nicht mehr lauffähig ist.

Das einzige iOS Device bei mir zu hause ist der iPod meiner Tochter auf dem dieses noch läuft.

[slideshow_deploy id=’1420′]

Games: Cube Clacker für iOS

Wer Diamond Dash kennt wird mit Cube Clacker seine Freude haben. Wieder ein Game das mit Monkey X entwickelt wurde.

Es gilt hier wie sollte es nicht anders sein um bunte herunter fallende Steine ;-)  Diese gilt es natürlich so schnell wie möglich verschwinden zu lassen. Mit der Zeit steigt das Tempo und der eine oder andere Stolperstein wird einem in den Weg gelegt. Auch falsche Entscheidungen in der Eile werden postwendend bestraft.

Dieses Spiel ist kostenlos und allemal einen Blick wert!

[slideshow_deploy id=’1418′]

Games: Tiny Flippers für iOS

Und weiter geht es mit der Reihe von Spielen die mit Monkey X programmiert wurden. Dieses mal will ich Tiny Flippers vorstellen. Als ich dieses das erste mal gesehen habe konnte ich den Hype um Flappy Wings gar nicht verstehen. Im Vergleich zu Tiny Flippers ist Flappy Wings totaler quatsch.

Tiny Flippers gehört ebenfalls zu den „One-Finger“ Spielen. An der Bedienung sollte es also nicht scheitern. Es gilt eine kleine Schildkröte durch verschiedene Level zu steuern. Der Schwierigkeitsgrad ist eher gering, das einzige Limit ist die Zeit und das gesammelte Geld mit dem PowerUps erworben werden können. Durch den geschickten Aufbau ist Langzeitmotivation garantiert. Zumindest bei den Personen die alle Items aus dem Shop haben wollen ;-)

Das Spiel bietet eine liebevoll gezeichnete animierte Grafik. In der kostenlosen Variante werden Werbebanner angezeigt. Über einen saftigen In-App-Purchase von 4,49 € können alle PowerUps auf einen rutsch gekauft werden. Aber wo bleibt dann noch der Reiz am Spiel?

[slideshow_deploy id=’1379′]