Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Allegro's relevance makes me happy

This thread is locked; no one can reply to it. rss feed Print
 1   2   3   4 
Allegro's relevance makes me happy
Bruce Perry
Member #270
April 2000

Background

I clearly remember my journey into the world of Allegro. Up until 1999, I was using QuickBASIC with a few assembly language routines for key state detection, sprite plotting and a few other things. I'd tried C once but couldn't do anything except a boring console app, but I think I started to hit QuickBASIC's real-mode memory limits and thought it might be worth looking into C again. I found DJGPP and, with that (via the zip picker), Allegro. My first version of Allegro was version 3.11, and it had all my assembly language routines, and much, much more, already implemented. I wasn't sure whether to be happy or sad about this.

Nevertheless, I used it to make some fully-fledged games such as Line Wars and Rock 'n' Spin. I joined the Allegro mailing lists and was able to contribute some fixes and improvements of my own; there was something to do with off-by-one polygon rendering, and something else to do with colour maps, I seem to recall. While looking for somewhere to put my games, I came across the emerging Allegro Games Depot, which soon became Allegro.cc, and posted a rather embarrassing advert for Rock 'n' Spin in the main news column. (I was trying to sell it as Shareware at the time with no knowledge of marketing; no one bought it or probably even found it.) After a while, Matthew put the current forum discussions in the left-hand column, and I met more fun people like Sp0oN and Nicholle.

Thanks to Allegro, I even started writing a Portal-based 3D engine, complete with editor. I had tried Half-Life once on someone else's computer and knew I could create better input controls. My engine went on to be a very popular game. OK, maybe not. Actually I ran into serious performance problems, possibly as a result of my decision to build everything up from tetrahedra and treat every single tetrahedron face as a portal, with no optimisations for adjacent tetrahedra. I could probably do a better job these days, if such a style of engine were still relevant! (Actually I don't even know - maybe it still is?)

I notice Steve++ had quite a similar experience.

The point of this post

I just wanted to say I still occasionally find time to work on a game at home, and I absolutely use Allegro to do it. While Allegro 4 (and perhaps the software-rendered, 256-colour days in general) had a certain charm that I sometimes miss (who remembers the grabber?), I do think Allegro 5 is a good modern-day equivalent, in the sense that it makes it really easy to develop for traditional PC-shaped things without neglecting any minority groups (you know - the ones with X's in their names), at a low enough level that you can really be creative with the implementation and make your game look distinctive. (Case in point: I wonder how many of these quick game-making frameworks people talk about could have led to Braid.)

Allegro is great, and it continues to make progress. It may not be very well known, but they say it's all about marketing. When people come to the forums and see a thread about "Allegro's irrelevance", they think, "Oh, is that what people think? Maybe it's true." But now they'll see a thread about "Allegro's relevance" instead, and they'll think Allegro is worth talking about.

So, whoever said it's all about marketing but didn't post this thread (instead of me), you have my permission to kick yourself.

By the way, the fact that I can write my code in D these days (having now used Java a lot and realised just how much time C and C++ waste) makes Allegro even better.

Go Allegro! :D

--
Bruce "entheh" Perry [ Web site | DUMB | Set Up Us The Bomb !!! | Balls ]
Programming should be fun. That's why I hate C and C++.
The brxybrytl has you.

Thomas Fjellstrom
Member #476
June 2000
avatar

TL;DR[1]

References

  1. Ironically I did read it. All of it.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

RickyLee
Member #11,573
December 2009

I see what you did there :)

Erin Maus
Member #7,537
July 2006
avatar

I'm porting my game over to D using SiegeLord's DAllegro5 wrapper. So pretty; I cry tears of joy :'(.

---
ItsyRealm, a quirky 2D/3D RPG where you fight, skill, and explore in a medieval world with horrors unimaginable.
they / she

Karadoc ~~
Member #2,749
September 2002
avatar

When people come to the forums and see a thread about "Allegro's irrelevance", they think, "Oh, is that what people think? Maybe it's true." But now they'll see a thread about "Allegro's relevance" instead, and they'll think Allegro is worth talking about.

I think this is one of the fundamental weaknesses of forums as a form of communication. Chatter is what puts threads at the top of the page; and the relative strengths of threads is not taken into account.

When someone posts something controversial, it tends to start a long running argument which stays at the top of the forum for a long time, gaining a lot of publicity. This can happen even if there is only one person supporting one side of the argument against the rest of the forum memebers. That one person's voice is made unproportionally loud.

When someone posts something that most people agree on, it can be held up for a little while by people posting trivial things like "I agree", but ultimately it will gain less air-time than the controversial posts. And when someone posts a complex argument that not many people have the time or skills to respond to - not many people will respond, and so again the thread falls off the top of the forum.

(I suppose reddit is pretty popular because it solves the problem I'm describing - but reddit has different problems instead.)

-----------

furinkan
Member #10,271
October 2008
avatar

Used A5 and C on my programming final, which had to be presented. Didn't run very well on Win64 come to find out (due to MingW32 nuances), but the very concept and the fact that it DID run was enough to blow most other projects out of the water.

Also, I've been lurking throughout the entire other thread, and I think Allegro is very relevant. Its relevant to me, and that's what matters. Who cares about SDL? Haters gonna hate! ;)

Working hard designing a top-down-action-RPG engine, which Allegro 5.X will be the base for. I plan to work on the ^Allegro^ wiki a smidgen, if I ever get internet at home.

Thanks for the intuitive, fast library!

Johan Halmén
Member #1,550
September 2001

who remembers the grabber?

Grabber and the built-in GUI are two reasons why I still use A4. Though I don't code very much anymore.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Years of thorough research have revealed that the red "x" that closes a window, really isn't red, but white on red background.

Years of thorough research have revealed that what people find beautiful about the Mandelbrot set is not the set itself, but all the rest.

Peter Wang
Member #23
April 2000

furinkan said:

Who cares about SDL?

SDL is not the enemy. (I know that was in jest)

Bruce, I'm quite glad to hear you've tried A5!

beoran
Member #12,636
March 2011

Well, I'll also join in with the chorus: Allegro , and certainly Allegro 5 are great libraries. Well fleshed out, clean, and easy to use for people who know their C. I, for one, am very grateful for Allegro.

Furinkan, as I said in the other thread, if plain C and mruby are fine with you, we could cooperate on such an RPG engine. And Chipmunk is ideal for good collision handling and physics for action based games.

Bruce Perry
Member #270
April 2000

SDL is not the enemy.

Yes they are! Their licence doesn't allow us to steal their code without attribution. That makes them the enemy.

And yes, please do pick up the framework planning here - it'll look better for Allegro to have this thread survive instead of the other one :)

--
Bruce "entheh" Perry [ Web site | DUMB | Set Up Us The Bomb !!! | Balls ]
Programming should be fun. That's why I hate C and C++.
The brxybrytl has you.

weapon_S
Member #7,859
October 2006
avatar

furinkan said:

but the very concept and the fact that it DID run was enough

You made me laugh >_<
If you want to talk about making an Allegro framework...

There is one kind of "framework" I'm occasionally daydreaming about. It's actually a programming environment for kids. It's supposed to use a "least context semantics" programming language I've doodled a bunch of. The language would have named return values, ECMA like classes, and knowledge of the call stack (I think that has some fancy name). The environment would feature a text output, and a graphics output that supports some primitives. I don't think I would expose Allegro, in favor of a system that uses "viewports". (Maybe I'm too influenced by QBasic.) And that's all I have on paper :-[

Everybody spout his random ideas brainstorm. ;)

Matthew Leverton
Supreme Loser
January 1999
avatar

I task Mr. Perry with playing us a happy song to boost morale. >:(

Kris Asick
Member #1,424
July 2001

Over the next three years, provided I don't suffer an untimely fate and the Vogons don't decide to start building their hyperspace bypass through our solar system, I'll be making and adding FOUR commercial products to the roster of Allegro 5 games. ;)

I did indeed try to build a game engine for Allegro 4 at one point. My thinking was that having a game engine would simplify the process of game making immensely. I got about half-way done when I realized that, even if I finished this engine, it would only cut down development time of my projects slightly. :P

Instead, what I do now is: When I develop something that's generic enough to benefit more than just the game I'm working on, like a new timing system or an extremely useful mathematical function, I stuff it into its own independent code file which I can then copy and paste into any project I work on. At present, I have five such cpp/h file pairs:

g-rand.cpp/h -> My own pseudo-random number generator
g-time.cpp/h -> My own timing routines including interpolation calcuations
g-gui3.cpp/h -> The third revision of my very basic (but functional) GUI
g-frag.cpp/h -> Fragment shaders
g-misc.cpp/h -> Everything else like math functions, string functions, etc.

I also had a g-idle2.cpp/h pair for awhile for doing accurate idling in Allegro 4, but since Allegro 5 doesn't have to worry about busy waits it's been rendered obsolete. ;)

--- Kris Asick (Gemini)
--- http://www.pixelships.com

Johan Halmén
Member #1,550
September 2001

it'll look better for Allegro to have this thread survive instead of the other one

Ok. Who will win the 2014 FIFA World Cup in Brazil? What is it with atheists? Why do people still insist on using C++ instead of just plain C?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Years of thorough research have revealed that the red "x" that closes a window, really isn't red, but white on red background.

Years of thorough research have revealed that what people find beautiful about the Mandelbrot set is not the set itself, but all the rest.

Matthew Leverton
Supreme Loser
January 1999
avatar

Kris Asick
Member #1,424
July 2001

Why do people still insist on using C++ instead of just plain C?

I use both in tandem; What does that make me? ;D

--- Kris Asick (Gemini)
--- http://www.pixelships.com

Neil Roy
Member #2,229
April 2002
avatar

Wow, your experience sounds almost identical to mine. I was using QuickBASIC and started to run into it's limits. Then I found DJGPP and a book called "QBASIC TO C" which helped me convert over (even though the book got bad reviews, it helped me immensely). I started to write my own library for C with various VGA graphics functions etc until I found Allegro (I think Allegro 2). Like you, I was sort of saddened, because my little library was starting to take shape. But that went away fast when I started programming with Allegro.

Looking back at where Allegro started and now with some of the stuff we can do with Allegro 5, it's come a long ways thanks to the dedication of some gifted programmers.

Why do people still insist on using C++ instead of just plain C?

I still program in C. Specifically, C99, although I recently learned about the C 2011 standard and may start using it. I am not a fan of C++, I think it's a lot of bloat.

P.S: I still love programming using Allegro 5 for the PC. I have had a friend bugging me to make games for Android for $$$. I enjoy programming for the PC, using Allegro. I am working on something right now with it.

The only thing that has been slowing me down with development is age I think. My enthusiasm isn't the same it used to be + various other life issues.

---
“I love you too.” - last words of Wanda Roy

bamccaig
Member #7,536
July 2006
avatar

I think that Allegro is one of the best kept secrets. It is a very simple and capable library. Thanks to a relatively small active community I think that Allegro has developed one of the most friendly and helpful communities that there are (and I'm not the only one to think so; over the years I have seen several people remark the same). Honestly if there was suddenly a hoard of iOS or Android developers flooding the forums here I imagine the community would suffer. It's not possible to keep up with thousands of people at once. There's no time for that. As it is I sometimes get overwhelmed and can't keep up with interesting threads.

As for thread influence, anybody making a decision based on thread titles is judging a book by its cover and we all know the wisdom there. Unless you follow a thread you really don't know what it's about or what is being discussed (we're infamous for finishing with one topic and spiraling into branch topics). I think those super threads are also a part of what makes our community so strong. We spend so much time arguing with one another that we get to know each other pretty well. It allows us to identify and recognize each other more easily.

"Relevance" is irrelevant. Allegro exists because of the Allegro community, which will remain strong indefinitely as long as we all stick around to participate.

Thomas Fjellstrom
Member #476
June 2000
avatar

I stuff it into its own independent code file which I can then copy and paste into any project I work on

I'd personally turn it into a static library. And share the library between projects, so you don't have to maintain several different copies.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

RickyLee
Member #11,573
December 2009

bamccaig said:

Thanks to a relatively small active community I think that Allegro has developed one of the most friendly and helpful communities that there are (and I'm not the only one to think so; over the years I have seen several people remark the same)

People say the same thing over at Leadwerks.

Quote:

I think that Allegro is one of the best kept secrets.

It's like a small hole in the wall coffee shop that you may find. Some people just like being in the minority, like fighting against the "man". When that coffee shop grows and starts gaining popularity those people all of a sudden don't like it anymore, even if the core of the coffee shop is the same.

furinkan
Member #10,271
October 2008
avatar

Quote:

Women. Guns. >:(

Ok. Who will win the 2014 FIFA World Cup in Brazil? What is it with atheists? Why do people still insist on using C++ instead of just plain C?

This thread is sure to become quite the lulzbucket here soon. ;D

This forum is oddly like an internet coffee shop! :o But that's part of its charm, there isn't thousands of squabbling masses and we don't have to divide the forum into sections and assign moderators to keep the sheeple in check. Its a small, friendly community, which is why I've just hung around for the past 4-5 years. I even miss people when I don't see their posts for a while! (*cough* Mark O, Amarillion, verthex, type568, piccolo, et al. cough)

beoran said:

Furinkan, as I said in the other thread, if plain C and mruby are fine with you, we could cooperate on such an RPG engine. And Chipmunk is ideal for good collision handling and physics for action based games.

@beoran:
You'd have to give me a good reason to program in C. I don't think I'm bamf enough to program in straight C. ;D I haven't done any coding at all on mine, I've just been white-boarding a bunch of algorithms, planning file format requirements, working out the layering system, researching libraries (which you have helped immensely with in the other thread), yada yada.

I explained mine as an RPG, but in reality that was just to explain it better without blabbering about details. I'm actually planning a LOZ: Four Swords type engine. I wasn't even going to consider a single player "campaign".

Currently, I'm writing a program to rip unique tiles out of screenshots, compensating for flipping. I could just go to The Spriters Resource, but the tiles are never in a format usable by a program. :-/

Dizzy Egg
Member #10,824
March 2009
avatar

Allegro 5 makes me sexually aroused; I'm not sure if that helps anyone.

----------------------------------------------------
Please check out my songs:
https://soundcloud.com/dont-rob-the-machina

beoran
Member #12,636
March 2011

Furinkan: If you're not "bamf enough" for C, then I fear C++, which is far more complex, will be a disaster. And there you have one good reason to use C. :) Apart from the fact that you have to be a bit more explicit in C, and do a bit more manual work, it's a much simpler and straightforward language. Single or multiplayer isn't that much different I think, the engine I have could become useful to other people too as it develops.

Dizzy Egg
Member #10,824
March 2009
avatar

I dunno....C++ is more helpful after a couple of weeks solid practice...I say if you're good in C go C++, it's 2013.

----------------------------------------------------
Please check out my songs:
https://soundcloud.com/dont-rob-the-machina

furinkan
Member #10,271
October 2008
avatar

@beoran:
What I mean is, I'm used to classes/Objects in higher languages like PHP/JS. I like the organization that a little OOP can give, and I like the terseness. I'm alright in C++. I'm just curious as to why I should only use a subset of C++ (that is: C), when the compiler eats most of the overhead anyway.

 1   2   3   4 


Go to: