March 29, 2006
This version is really a small maintenance release, making sure we compile with Morfik 0.8.6.5 and adding the blog link: if you click on the PannonRex name, it will take you to this blog showing all topics related to Pong, so it is a nice shorthand to check out any news AND post your comments.
Tada! Tada! The Challenge! Create the best AI for Pong!
Details:
When there is at least one computer player in the game, the system uses something exaggeratively called AI (for Artifical Intelligence) to play the computer side. This code is separated in the modPongAI module. It is called whenever the player can move its racket up or down.
The original AI is very simple. Create one that plays much more humanely!
Some tips:
- The current AI sometimes gets into an infinite loop if a Computer:Computer game is in progress – your AI should avoid this.
- Difficulty levels should be more different (now the biggest differences are racket size and ball speed).
- The gameplay should be humane (right now rackets sometimes become crazy going up-down-up-down, and the computer is not human enough in other respects either).
- You must not use any information beyond what is provided by the TAIEnvironment record.
- You must not provide a perfect AI by calculating the complete trajectory of the ball.
Please note that it will take time to get some momentum behind this challenge, especially since Morfik is very new and not used widely. Please bear with me and spread the word. The more participants we can greet, the more fun we’ll have. I may decide to cancel the challenge without obligation.
What is the reward? Fame, at the moment. If anyone wants to sponsor a prize, please contact me.
March 28, 2006
The main attraction from user perspective is Beginner/Intermediate/Expert modes: the filed size and count of mines is different. Please note that in this version switching to Intermediate/Expert mode is very slow – will look into it.
If you click on the PannonRex name, it will take you to this blog showing all topics related to Sweeper, so it is a nice shorthand to check out any news AND post your comments.
For developers the interesting news is that the mode change is implemented by deleting all the old cell controls (Images) and re-creating them. The re-creation takes way too long at the moment, I’ll see what can be done (CreateDOM seems to be the bottleneck). I already did some code optimization in GetField() (instead of a linear search I simply compute the index of the control; quite a speed deamon) and in other areas.
Planned:
- I will fine tune the horizontal alignment of controls so that all of them are centered, based on the size of the filed. I had a first try, but run into some mfkIssues ;-)
- Long processes block the UI from updating, and even animated GIFs are suspended (at least in IE). Will look into giving some hartbeat to the UI. If anyone has any idea how, please let me know.
March 23, 2006
Good. Why is this worth mentioning? Because the site itself is done in Morfik! Go and check it out: looks pretty awesome!
Now both @Sweeper and Pong are available in the Labs on the Morfik site. Please note that the current versions have some issues with the latest Morfik releases (0.8.5.6 and 0.8.6.2). I fixed these issues, but it will take Morfik some time to update the Zips in the Labs. The correct versions are: 0.7 for @Sweeper, 0.3 for Pong. If you don’t want to compile the examples, then don’t bother: the EXEs in the Zips work fine.
For the curious, the problems were: @Sweeper had a reference to a variable that no longer exists and Pong did shrink vetically after the Intro screen was closed.
March 21, 2006
Many times you don’t want the user to right-click in your xApp or want to use the righ-click for some other purpose than popping up the browser’s context menu. How?
Read the rest of this entry »
March 20, 2006
One of Morfik’s greatest strengths is rapid application development (RAD). One fundamental aspect of any RAD tool is powerful debugging. In a web environment this is usually much more complex than in a traditional fat client (e.g. Windows-) application. Let’s see how we can get it to work.
Read the rest of this entry »
March 13, 2006
The Problem
This is our first lesson on Morfik internals. Let’s see something simple: we have a Container (with CanGrow=Scroll) on our form and we would like to make sure that after we add some content to the bottom of this Container the new content is in view. All we have to do is to scroll the the Container to the bottom – let’s do this with a JavaScript function for the fun of it (spoiler: this can be done in Morfik Pascal, too).
Read the rest of this entry »
I will present a very simple idea, possibly already somewhat doable with current technology (but enhancements to current technology would make it more efficient and robust). The problem is: AJAX applications (whether in OpenLaszlo, Backbase, Morfik, or anything else) have a sizeable browser-side code base that has to be downloaded each time an application is accessed.
Read the rest of this entry »
March 9, 2006
I suppose you know both OpenLaszlo and Backbase if you know Morfik or are serious about Web 2.0. The big news is that OpenLaszlo, which was traditionally a Flash-based client, now has (in alpha stage) support for a DHTML runtime. Check out their LZPiX demo — it is awesome (they have it both in Flash and DHTML; for the DHTML version Fireforx 1.5 is required as of this writing).
While Morfik is a complete integrated development environment for web applications (xApps in their parlance) both Backbase and OpenLaszlo are “only” client-side UI toolkits, but very capable ones. Morfik will have to add some eye-candy, too. Hmmm… stay tuned ;-)
I have been developing interactive software for twenty years now and it is encouraging for me to see and experience how all this new Web 2.0 stuff is advancing usability. Of course all these technologies are only tools that can be used for good or wrong, but there are a lot of new applications developed with these tools that are really pleasant and easy to use (KISS, anyone?).
Here is a farewell song form El Reg. Very touchy. There are other writeups from the same team here and here about the Borland IDE DevCo story. Not that optimistic.