Whats your suggest for API?

Started by
28 comments, last by K-Zodron 18 years, 11 months ago
Yes, SDL is actually written in C. It's more styled for C++, though. Allegroon the other hand...
Advertisement
Just a suggestion - but you could use a console app and DirectPlay for a MUD - I've used DP succesfully in the past and it's very easy to get the hang of - you really do not need any librabries that give you graphics support, as MUDs by their very nature do not contain graphics...
-Scoot
Sheesh, just messin around you guys. I think the reason I would heavily recommend Allegro over SDL because there are so many resources (tutorials, open srouce projects, huge community) available that I never saw in SDL. By all means, SDL is a great API, an in no way inferior to Allegro, but with the Loomsoft tutorials to start you out, you can be up and running with some sample games in no time. It incredibally easy to learn, and I havn't encountered a single roadblock in all the time I've used it. Good luck!

-IV

PS: Did someone rate me down cause I said SDL is silly? I was just playin, lol (I think I lost 7 points).

-IVHumble Student

Well well, I'll go for Allegro I guess, already began some yesturday and it works kinda fine. Though getting some pure connection code for sockets is a pain in the ass with allegro <.<


Btw, what do you really mean with a "console game"? Like a Text based black screen or a black screen that starts a graphical type of a program?

The reason I normally recommend Allegro is because it does useful things which SDL doesn't. Cleanliness of API, documentation etc, notwithstanding, these functions are provided by Allegro and NOT by SDL:
- Line drawing
- Circle drawing / filling
- Polygons
- Text output

Therefore it should be obvious to anyone who doesn't enjoy writing their own line / text etc routines, that Allegro is easier to use for this sort of thing. I particularly wonder how you're going to make any kind of MUD / adventure game without text output routines.

YES there are extension bolt-on libraries (of varying quality) for SDL which DO provide these things, but Allegro has it all in one box (Even if it is bloated, fluffy, hairy, mouldy etc, any other criticism)

Mark
Quote:Original post by markr
The reason I normally recommend Allegro is because it does useful things which SDL doesn't. Cleanliness of API, documentation etc, notwithstanding, these functions are provided by Allegro and NOT by SDL:
- Line drawing
- Circle drawing / filling
- Polygons
- Text output

Therefore it should be obvious to anyone who doesn't enjoy writing their own line / text etc routines, that Allegro is easier to use for this sort of thing. I particularly wonder how you're going to make any kind of MUD / adventure game without text output routines.

YES there are extension bolt-on libraries (of varying quality) for SDL which DO provide these things, but Allegro has it all in one box (Even if it is bloated, fluffy, hairy, mouldy etc, any other criticism)

Mark


Good to hear :P

But hey, is it possible to use "plain c++" inside the Allegro client, like start sockets etc.? (Last time when I included my "socket.h" the compiler gave like 500 errors on BITMAP*'s)

Bump
There are some issues with Allegro and windows.h - this only affects Windows platforms, and is addressed in the documentation under "platform specifics".

It is not a major problem.

It IS possible to get around this, and include Allegro and windows.h (windows.h is a prerequisite for winsock.h)

Mark

Just to expand upon what markr said, this is a quote from the FAQ that I think deals with your problem:


Q: I get lots of compile errors about conflicting types for "struct BITMAP"!

A: If your program directly includes Win32 API header files, see the "Windows specifics" section of the documentation. If your program only includes header files of the C++ standard library, you're very likely trying to compile it with gcc 3.x for Mingw32; if so, define the symbol __GTHREAD_HIDE_WIN32API on the compiler command line:
g++ -D__GTHREAD_HIDE_WIN32API program.cpp -lalleg



The other way to deal with this is to define the symbol yourself at the top of your header files:

#define __GTHREAD_HIDE_WIN32API
Replace

#include
#include

with

#include
#include

This topic is closed to new replies.

Advertisement