

Game Development in Mozilla 89
camworld writes "O'ReillyNet has a short article from the Alphanumerica guys about building a classic arcade game using Mozilla:
In a way, this is like connecting a DSL line to a Commodore 64 computer. We're working on rewriting an arcade game from the early 80s using Mozilla technologies. By combining two different technologies from two very different times, we hope to be able to learn something new from in a new way."
Re:Why this is "a good thing" (Score:3)
Neither's Internet Explorer then:
Asteroids in DHTML, from Microsoft, done at least 2 years ago [microsoft.com]
Re:So much time, so few ideas (Score:1)
Because Alphnumerica has done a lot of things to draw attention to Moz. This just happens to be the furthest out. The idea of Moz being "a platform from which a browser is built" is something the Moz community (not just these folks) have been dreaming of for a while.
Re:Be careful... (Score:2)
The new icon is bigger. (Score:2)
Re:Speed (Score:1)
Commodore 64 (Score:1)
Believe it or not, people still make demos for the good ol' c64. Not so many games these days, but with such a deep library who cares?
Try www.c64.com for games, or www.c64.org for other stuff.. Try finding some recent CREST demos, they really show off the hardware. Most people are amazed at the stuff that is possible on an 8-bit, 1 Mhz platorm.
Also, try going to #c-64 on ircnet. Yes, people still crap on about c-64s
Simon
Re:Be careful... (Score:3)
Could a javascript program look itself up in cache, and call itself to be run again, this time having local priviledges?
::Sheesh:: (Score:1)
(then again, it might be a project to employ all those unemployed post-Y2K COBOL programmers)
Re:Z80 (Score:1)
Re:Cool! (Score:1)
Do you perhaps mean Pharao's Curse? With a annoying bird to take you away from the treasure and a cowboy and mummy to shoot you? Ahh, long live memory lane....
---
M$ Illegally Bundles OS with Browser! (Score:1)
Industry analysts have voiced their support for the inclusion of the legacy OS, stating,
What would be really interesting to see (Score:1)
In fact, I might even develop a version myself that runs under Curses...
Bridging the technology gap. (Score:1)
Has anyone noticed how what used to be called "methods", "ideas", "algorithms", or any one of a dozen other terms are now called technologies? - like push technology - that's probably the funniest. So what are we supposed to call real technology to avoid being ambiguous nowadays?
Re:So much time, so few ideas (Score:1)
Even when this is done it'll be vaporware, it's so pointless. What will they really learn from this? LAAAAAAAAAAAME.
Save a lot of pain and use Shockwave/Flash... (Score:1)
Just goes to show.... (Score:2)
I'm ranting now, I should quit...
Jay (a programmer that hates when fucking shit is praised as "the best thing since sliced bread"..)
Re:Be careful... (Score:4)
Javascript can do file I/O in Mozilla. Take a look at this link [alphanumerica.com]
Original Pac-Man Code (Score:4)
Question: Will it still have the original cheat where if you fit into the right side of the "T" (which is above where you start) and face up while no ghosts are looking, you can stay there forever without getting caught?
Selected good links from the article (Score:3)
[alphanumerica.com]
Script Editor
- Another example of mozilla put to good use.
Re:Why this is "a good thing" (Score:5)
The whole idea is a little strange, though. Having cross-platform data (HTML) apparently wasn't good enough; now we need cross-platform programs too. Oh, pretty well the whole thing has to be rendered in software? Good! Just as long as every single pixel looks exactly the same in Windows as it does in Linux. That we can be sure that it will not look, feel, or act like any other program on any other platform, a sure-fire way to confuse our customers to no end. Then again, who needs to use programs on different platforms when they can run programs running on this new OS called Mozilla? I can only hope that some day Emacs will be ported to Mozilla, so that we can run an OS inside an OS inside an OS for no apparent reason.
Anyway I'm done bitching. I've got fed up with waiting for a decent, free web browser to appear; it's apparently never going to happen (Konqueror aside; I don't like KDE, OK?), so I've started the arduous task of writing my own. Blah. Mozilla looked so promising at the start, too. At around M8, it was the coolest thing on Earth.
Thus it began (Score:5)
This is certainly an interesting project: Not because it's Mozilla, not because its cross-platform, not because Pac-Man kicks ass (I'd rather it be good ol' Pong, myself), but because this has been what a number of major companies have been looking forward to, or fearing depending on who they are and what they have.
This is something that Microsoft realized too late,and has only recently recovered from. What is it? The movement towards web browsers as a platform. MS passed off the Internet has a fad and only later realized that the future was moving away from the desktop. You don't actually think that IE was "integrated" for added value you, do you? Of course not: it's only there to ensure that their desktop OS marketshare continues to their browser marketshare as they see that this is the platform of the future.
Sun couldn't be happier that the desktop is going, they want all the programs to be hosted on Sun servers like the good ol' mainframe days. However, they are not a major player in this area (HotJava was never designed as a end user browser, and their servers don't care which of the other browsers are being used). Netscape had the lead until MS was able to buy it back, but their merger with AOL could lead to Bad Things as this continues.
Perhaps I'm letting my bias interfere when I assume that Bad Things will happen out of necessity,just because this is AOL, but you can probably see why I feel that way. Chances are that you've probably logged on to AOL at least once, maybe at a relatives house, and been spammed by all those annoying popups. Just imagine going through that every time you want to finish a document under a deadline. That's just one obvious problem that I can think of, but let your mind wander . . .
This is the next frontier, and some have seen it coming for quite some time . . .
Re:Be careful... (Score:1)
hmmm (Score:2)
Re:Great quotation (Score:1)
Re:What a stupid idea. (Score:1)
Amazing things you can do with Mozilla #327 (Score:1)
Why can't Mozilla just be a BROWSER ?
Honestly, all I want for Christmas is a standards-compliant browser. Please, please , make it happen soon...
Re:Why? (Score:1)
I'll give you Mozilla, Mozilla is all I need now.
Write a new OS in Mozilla. Any OS will do, cause Mozilla can do it. It can do anything.
I'll give you Mozilla, a Mozilla to run in the OS that runs in Mozilla that runs on an OS.
There's a hole in the bucket, dear Liza dear Liza
Re:Original Pac-Man Code (Score:1)
That would be too easy. (Score:1)
Just have a load of HTML pages with embedded video (or an animated .gif and BGSOUND), and slam in some links along the bottom for "Up", "Down", "Left", "Right", and "Action", along with a META Refresh that points to death.html after a few seconds.
It'll be slow as hell, but wonderfully cross platform. Bit like Mozilla, really.
Re:Be careful... (Score:1)
*chrome = part of an installed chrome package in the chrome directory, e.g. Navigator.
Re:Parallax (Score:1)
There's a pretty good Java applet version of Paradroid at J*va on the Brain [javaonthebrain.com] called "Urbanoids". Actually, there are a bunch of other cool Java games there, like Iceblox and 3D-Blox, which the penguin fans among us should enjoy.
Re:Why this is "a good thing" (Score:1)
quality (Score:2)
CAD, kicked, good [cadfu.com]
Re:Why this is "a good thing" (Score:1)
!ack! You've opened the can of worms. Now the next thing will be a demand that everyone call it GNU/Mozilla . . .
:(
Re:Z80 (Score:1)
You're right, you can do a 16 bit add from BC or DE to HL, but that's the only one. It's still a pain in the ass, though, simulating 16-bit multiplication with 8 bit shifts.
How to be high tech (Score:1)
----
Oh my god, Bear is driving! How can this be?
I want my M.U.L.E. (Score:1)
M.U.L.E. [eidolons-inn.de] under Mozilla with network-enabled play.
Catch the Wumpus!
---
hmpt (Score:1)
So like did I miss the point? or was it just to so you can make games in Dhtml?
Guys, They are not emulating a C64! (Score:1)
It's not as big a deal as many of you are making out. People have been doing this for a while now. Did any of you check out the link [harmonix.ne.jp]? There are some excellent examples of JavaScript games here. Check out Art Run (Out Run clone) in Netscape. Truly amazing when you consider it's just JavaScript and Layers (note: I have only tried this in the Windows version).
Anyway don't get annoyed at these guys they're just having a bit of fun and learning the capabilities of the various technologies.
I doubt this is slowing down the Mozilla development. If anything it is probably speeding it up because only when you start doing really obscure things with a piece of software do you find out the limitations and bugs.
If you don't agree with what they are doing, remember that most of these guys are just working on Mozilla in thier spare time; they are under no obligation to do "Proper" work on Mozilla. If you don't like it maybe you should start helping out the Mozilla effort yourself rather than just complaining. (Unless you already are a Mozilla developer! ;-).
Anyway that's just my two cents.
Great quotation (Score:3)
Emphasis added
Because, of course, nothing written using the Mozilla libraries could possibly be buggy...
Why? (Score:1)
I'm not giving this idiots any of my time.
Cool! (Score:1)
It was also perty easy to program, my uncle had a program the determined Balistics from weapons.
May I be the first to Say COOL,
I also like Mozzila, only a 5meg or so Download and just as good as netscape, just no mail program
Why this is "a good thing" (Score:5)
I guarantee that in the coming weeks and months, you will begin to see more and more mozilla based applications come out. I would say that a good portion of what can be done on the desktop can be done in mozilla.
That said, any project that forces people to recognize that what we have here trancends the realm of browser is "a good thing."
Oh yeah, all it takes is a ZillaGL module and you could play quake too!
Tony
Praise the Lord!~ (Score:1)
Re:Why this is "a good thing" (Score:2)
They'd best not. Everybody knows that mozarella is made out of buffalo milk, not gnu milk. :-)
Re:Why? (Score:2)
If you love old games... (Score:2)
This is news? (Score:1)
I'm sure this is going to get moderated to flamebait, but here goes anyway...
This is a project that the authors admit is barely even started, has already been done using a number of different technologies, and is being justified based on a number of dubious assertions (a.k.a. Java is buggy, Doing a 70's game on modern SW will teach you something valuable).
I really don't see the news value in this.
Be careful... (Score:4)
Anyway, it's not just Mozilla that could be powerful enough to make a video game. Tcl is a language that was designed to be embedded into programs as a scripting language. It's just not that remarkable that Mozilla has a scripting language powerful enough to build whatever you wanted.
friggin naysayers (Score:3)
So what if this is a silly, pointless thing to do. Not everybody is driven by some relentless urge to advance the state of technology, or to earn a paycheck. Some of us design/code software because we like to.
This sounds fun, and perverse (which many of us consider a good thing), so I like it. If you think it's a waste of time, then go write something productive and stop heckling people who have a different view of what it means to program.
My mom is not a Karma whore!
Wrong analogy, bloat (Score:1)
I think the analogy is flawed. Connecting a DSL line to a C64 enables you to use all of your computing resources; you just need a better computer to do more with it.
This project, on the other hand, is like connecting a 1200 baud modem to an SGI. You waste your computing resources just for the hell of it.
Re:meta-computing (Score:1)
So much time, so few ideas (Score:3)
Did this strike anyone else as a steaming pile of BS?
Why can't they just say: we're doing it for fun, because we have way too much time on our hands?
I still suck at it (Score:1)
For MacHack, the IE team did asteroids in DHTML (Score:1)
Seriously though, it's a good kick in the pants for people who didn't realize that a LOT of work is being done to make it possible to wite complete applications that load via the web.
I bet ... (Score:2)
Dave
Re:Why this is "a good thing" (Score:1)
Re:Why this is "a good thing" (Score:1)
Re:meta-computing (Score:2)
---
Just emulate (Score:2)
May not seem like much now, but... (Score:3)
I think the same is true for XUL/XML, DOM et al. In adding the extra layers (running an application on top of a browser on top of a virtual machine on top of an OS,
LS
Re:friggin naysayers (Score:1)
Yes you do: "naysayer" [dictionary.com].
Re:Why this is "a good thing" (Score:1)
Raising the important question, just what kind of cheese *do* you get from a gnu?
:)
Re:Why this is "a good thing" (Score:1)
Re:Why? (Score:1)
Maybe they can hack one up in XUL. ;-)
Re:Why this is "a good thing" (Score:2)
Given that M8 used the same cross-platform self-rendering technology that M16 uses and that you are criticizing...
It's always fun when people who disagree with me refute themselves.
Steven E. Ehrbar
Pshaw... (Score:2)
Learn something new? (Score:1)
Chris Armstrong
Re:Great quotation (Score:1)
Another one!
Heh-heh. For especially low values of "efficient."
Re:Why this is "a good thing" (Score:1)
Why? Why can't we just get a working browser, first?
Re:Be careful... (Score:1)
tony
meta-computing (Score:4)
These programmers are building an entire computing environment (XML in a browser) which runs inside of another computing environment (classic OS), and then re-writing a game to show how they can now work entirely inside of Mozilla and never have to leave the browser environment.
This is yet another example of how the computer, the OS, the applications, and the network are all starting to become interchangeable. It goes one step closer to Bill Gates assertion that the browser belongs inside the OS, but it also shows that a sufficiently bloated browser can replace the OS.
Now they just have to write some compilers and libraries in XML, and we'll never have to leave our browser environments again. Ooops, that's emacs. Sorry.
the AC
Temple of Apshai? (Score:2)
Old computers don't die... (Score:1)
Vroom (Score:1)
Re:Cool! (Score:2)
Re:Learn something new? (Score:1)
Z80 (Score:3)
For example, the Z80 only has ONE general purpose register ("A"). All loads and stores (even literals) have to pass through this register, so there tends to be a lot of register dancing that would be completely silly in a modern architecture.
Second, you want to go to great pains to avoid tables larger than 256 bytes, and they must be powers of two (or sums of powers of two). This is because there's no multiply instruction, and no 16-bit add; you have to simulate that yourself (with just the one A register, again).
You're also constantly at battle with the limited ROM/RAM of the hardware, switching banks (if you're lucky) to get around the 65k address space. Unheard of in a "modern" scripting language.
They may go with a "character data" and "background/sprite data" scheme like used on the nintendo and gameboy (and possibly similar to the way the Pac-Man arcade game worked); this seems to be a sensible way to go about making games with high graphic redundancy. But with the (comparably) high memory requirements that XUL has, it's probably simpler and more appropriate to just draw everything programatically.
My guess is that this will just be another everything-is-a-string javascript hack. Not that there's anything wrong with hacks...
Re:Be careful... (Score:1)
Since currently it doesn't matter where it's run from (because the feature isn't implemented yet) it's really moot. And certainly something that obvious won't slip by.
Re:Why this is "a good thing" (Score:1)
Re:Why this is "a good thing" (Score:2)
Neither's Netscape 4.x then:
Tetris done in DHTML [itchmagazine.org] by Rusty Foster, creator of Scoop and my fellow admin at Kuro5hin.org [kuro5hin.org].
Really, this complexity is not needed in browsers. I'd be happy if people would just use HTML 4 + XML 1.0 + CSS.. Browsers should only render marked text, not be used to play 1980s games written in scripting languages. Do one thing, and do it well!
---
Re:Just goes to show.... (Score:5)
When the Mozilla project started, the requirements were that the resulting software be highly portable, compliant with a whole slew of web standards, and be a superset of the functionality of Netscape Communicator. Thus, it was doomed to be bloated before it even began. It was doomed to be bloated because that's what people WANTED it to be.
To quote JWZ (although he was referring to the pre-opensource Mozilla), "Mozilla is big because your needs are big. Your needs are big because the Internet is big. There are lots of small, lean web browsers out there that, incidentally, do almost nothing useful. If that's what you need, you've got options..."
Mozilla's solution to its own bloat-by-design was, IMHO, rather elegant. It took stock of the what it was required to implement, and then used those technologies to build other components. This isn't anything particularly new, of course emacs invents itself from its lisp interpreter.
To fulfil its goal of standards compliance, Mozilla had to understand HTML, XML, Javascript, DOM and CSS. To maintain a suite of applications (browser, mail/news, html authoring tool) across widely differing platforms, it needed its own flexible, cross-platform UI and Networking libraries.
So Mozilla's self-reinvention as a platform, rather than an application was the result of necessity, and some pretty good thinking from the designers rather than just bloat for the sake of bloat. It was actually the most efficient way that it could perform the task it had been given.
Charles Miller
--
Reliability... (Score:1)
Unfortunately, I wanted to actually use the applications that I have on my desktop... not watch them crash every minute like in Windows or... Mozilla!
Yes, this is flaimbait- but also the harsh truth.
Re:Speed (Score:2)
Read the article, a group of people outside mozilla are developing this based on an existing Mozilla feature, XUL.
This is not something the mozilla team is adding to mozilla, it's a feature another group of of developers are utilizing.
Oops, have I been trolled?
Re:Speed (Score:2)
- Josh "Yoshi" Steiner
---
Xiphoid Process Records - http://xiphoidprocess.com
San Francisco based electronic music.
Re:meta-computing (Score:1)
AT Slow is your friend. (Score:3)
Correction they run extremely well and so fast that on the right hardware the game will be over before you realize it has started. My saving grace was a program named atslow. It would slow down your systems apparent performance to a level that let those old games be usable.
Recodeing a classic, any classic, inside Mozilla should have the same effect. The low resolutions and simple movements of older games are such that they can be run on modern hardware in even the slowest programing tools. Even Java and qbasic work.
This project should be a whole lot of fun. I'll definitely want to run through this code. Now howsabout building crazy climber as a kpart or a bonobo object so that we can embed it inside the calculator or make it a VIgore easter egg.
Re:Be careful... (Score:2)
It is not implied that it's "just Mozilla" that could be powerful enough for Pacman, but since Mozilla is in the limelight these days and it features XML and powerful things of that nature, they chose to use it. Since O'reilly has been a known supporter of Mozilla they'll probably post any cool news about Mozilla, I can't see where it's implied in the article that it's remarkable, but rather just a nifty thing to try and do. I for one, think it's cool.
Copyright (Score:1)
You'll be lucky if your grandchildren get to play the original unencumbered by copyright before retirement age. It lasts something like life-of-author plus 70 years.
I remember another name-mangled clone from long ago: 'Taxman' on the Apple II. One of my first hacks was to find the ghost images in this game and replace them by pictures of a disk drive, monitor, floppy and joystick.