Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Joseph DiPerla

#21
I do and was just wondering how many other adventurers are also combiners. Anyone?
#22
Well, to continue to alleviate expenses, pay more bills and create some more free time for myself and my family... I have decided to start selling some stuff on Ebay. The first thing I am selling off at the moment is my PS 3.

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=330770510190#ht_500wt_1156

If anyone is interested in taking a look, go ahead. Within the next couple of days I will be adding more items and I will revise this thread. Hope this isn't spamming against the rules or anything. Just figured that you might all be interested in taking a look. Maybe we need a board for buying and selling items and games and such...
#23
I had a question... I wanted to add more user mode's for better verbcoin functionality. I suppose the first place I should be concerned with this is in the Engine itself. As I have mentioned numerous times, I am not expert at c++, I am still learning and the adventure game engine scene in C++ is still a bit out of reach for me. However, that does not mean I cant practice and mingle :)

Anyway, I wanted to add the following cursor modes to the engine itself:
Give, Pull, Push, Take Off, Put On, Use with, read, Open, Close, Turn on, Turn Off, Kiss, Kick, Punch, Lick, Slap, instigate.

So, correct me if I am wrong, but, would I do this as far as the engine goes:

in rundefines.h, on lines 72 of the refactored code I would add:

Code: AGS
#define MODE_GIVE 10

Code: AGS
#define MODE_PULL 11

Code: AGS
#define MODE_PUSH 12

Code: AGS
#define MODE_TAKEOFF 13

Code: AGS
#define MODE_PUTON 14

Code: AGS
#define MODE_USEWITH 15

Code: AGS
#define MODE_READ 16

Code: AGS
#define MODE_OPEN 17

Code: AGS
#define MODE_CLOSE 18

Code: AGS
#define MODE_TURNON 19

Code: AGS
#define MODE_TURNOFF 20

Code: AGS
#define MODE_KISS 21

Code: AGS
#define MODE_KICK 22

Code: AGS
#define MODE_PUNCH 23

Code: AGS
#define MODE_SLAP 24

Code: AGS
#define MODE_LICK 25

Code: AGS
#define MODE_INSTIGATE 26

-----------------------------

In global_character.cpp on lines 381 I would add:
Code: AGS
else if (mood==MODE_GIVE) passon = 10;

Code: AGS
else if (mood==MODE_PULL) passon =  11;

Code: AGS
else if (mood== MODE_PUSH) passon =  12;

Code: AGS
else if (mood== MODE_TAKEOFF) passon =  13;

Code: AGS
else if (mood==MODE_PUTON) passon =  14;

Code: AGS
else if (mood==MODE_USEWITH) passon =  15;

Code: AGS
else if (mood== MODE_READ) passon =  16;

Code: AGS
else if (mood==MODE_OPEN) passon =  17;

Code: AGS
else if (mood== MODE_CLOSE) passon =  18;

Code: AGS
else if (mood== MODE_TURNON) passon =  19;

Code: AGS
else if (mood== MODE_TURNOFF) passon =  20;

Code: AGS
else if (mood== MODE_KISS) passon =  21;

Code: AGS
else if (mood== MODE_KICK) passon =  22;

Code: AGS
else if (mood==MODE_PUNCH) passon =  23;

Code: AGS
else if (mood==MODE_SLAP) passon =  24;

Code: AGS
else if (mood==MODE_LICK) passon =  25;

Code: AGS
else if (mood== MODE_INSTIGATE) passon =  26;

--------------------------

In Global_Object.cpp on line 374 I would add:
Code: AGS
else if (mood==MODE_GIVE) passon = 10;

Code: AGS
else if (mood==MODE_PULL) passon =  11;

Code: AGS
else if (mood== MODE_PUSH) passon =  12;

Code: AGS
else if (mood== MODE_TAKEOFF) passon =  13;

Code: AGS
else if (mood==MODE_PUTON) passon =  14;

Code: AGS
else if (mood==MODE_USEWITH) passon =  15;

Code: AGS
else if (mood== MODE_READ) passon =  16;

Code: AGS
else if (mood==MODE_OPEN) passon =  17;

Code: AGS
else if (mood== MODE_CLOSE) passon =  18;

Code: AGS
else if (mood== MODE_TURNON) passon =  19;

Code: AGS
else if (mood== MODE_TURNOFF) passon =  20;

Code: AGS
else if (mood== MODE_KISS) passon =  21;

Code: AGS
else if (mood== MODE_KICK) passon =  22;

Code: AGS
else if (mood==MODE_PUNCH) passon =  23;

Code: AGS
else if (mood==MODE_SLAP) passon =  24;

Code: AGS
else if (mood==MODE_LICK) passon =  25;

Code: AGS
else if (mood== MODE_INSTIGATE) passon =  26;

---------

In Global_hotspot.cpp on line 88 add:
Code: AGS
else if (mood==MODE_GIVE) passon = 10;

Code: AGS
else if (mood==MODE_PULL) passon =  11;

Code: AGS
else if (mood== MODE_PUSH) passon =  12;

Code: AGS
else if (mood== MODE_TAKEOFF) passon =  13;

Code: AGS
else if (mood==MODE_PUTON) passon =  14;

Code: AGS
else if (mood==MODE_USEWITH) passon =  15;

Code: AGS
else if (mood== MODE_READ) passon =  16;

Code: AGS
else if (mood==MODE_OPEN) passon =  17;

Code: AGS
else if (mood== MODE_CLOSE) passon =  18;

Code: AGS
else if (mood== MODE_TURNON) passon =  19;

Code: AGS
else if (mood== MODE_TURNOFF) passon =  20;

Code: AGS
else if (mood== MODE_KISS) passon =  21;

Code: AGS
else if (mood== MODE_KICK) passon =  22;

Code: AGS
else if (mood==MODE_PUNCH) passon =  23;

Code: AGS
else if (mood==MODE_SLAP) passon =  24;

Code: AGS
else if (mood==MODE_LICK) passon =  25;

Code: AGS
else if (mood== MODE_INSTIGATE) passon =  26;


In Global_inventoryitem.cpp on lines 104 and on
Code: AGS

Code: AGS
else if (modd == MODE_GIVE)

Code: AGS
        run_event_block_inv(iit, 10);

Code: AGS
else if (modd == MODE_PULL)

Code: AGS
        run_event_block_inv(iit,11);

Code: AGS
else if (modd == MODE_PUSH)

Code: AGS
        run_event_block_inv(iit, 12);

Code: AGS
else if (modd == MODE_TAKEOFF)

Code: AGS
        run_event_block_inv(iit, 13);

Code: AGS
else if (modd == MODE_PUTON)

Code: AGS
        run_event_block_inv(iit, 14);

Code: AGS
else if (modd == MODE_USEWITH)

Code: AGS
        run_event_block_inv(iit, 15);

Code: AGS
else if (modd == MODE_READ)

Code: AGS
        run_event_block_inv(iit, 16);

Code: AGS
else if (modd == MODE_OPEN)

Code: AGS
        run_event_block_inv(iit, 17);

Code: AGS
else if (modd == MODE_CLOSE)

Code: AGS
        run_event_block_inv(iit, 18);

Code: AGS
else if (modd == MODE_TURNON)

Code: AGS
        run_event_block_inv(iit, 19);

Code: AGS
else if (modd == MODE_TURNOFF)

Code: AGS
        run_event_block_inv(iit, 20);

Code: AGS
else if (modd == MODE_KISS)

Code: AGS
        run_event_block_inv(iit, 21);

Code: AGS
else if (modd == MODE_KICK)

Code: AGS
        run_event_block_inv(iit, 22);

Code: AGS
else if (modd == MODE_PUNCH)

Code: AGS
        run_event_block_inv(iit, 23);

Code: AGS
else if (modd == MODE_SLAP)

Code: AGS
        run_event_block_inv(iit, 24);

Code: AGS
else if (modd == MODE_LICK)

Code: AGS
        run_event_block_inv(iit, 25);

Code: AGS
else if (modd == MODE_INSTIGATE)

Code: AGS
        run_event_block_inv(iit, 26);

Code: AGS


Now the next few parts of code are for the editor itself. I get most of it, however, I can not seem to be able to add these to the mouse cursors section on the pane. Any idea’s? Anyway, here goes:

On line 23 in Roomhotspot.cs, change the following to:
Code: AGS
_interactionSchema = new InteractionSchema(new string[] {"Stands on hotspot",

Code: AGS
                "$$01 hotspot","$$02 hotspot","Use inventory on hotspot",

Code: AGS
                "$$03 hotspot", "Any click on hotspot","Mouse moves over hotspot",

Code: AGS
                "$$05 hotspot", "$$08 hotspot", "$$09 hotspot", “Give”, “Pull”, “Push”, “Take Off”, “Put on”, “Use with”, “Read”, “Open”, “Close”, “Turn on”, “Turn off”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”},

Code: AGS
                new string[] { "WalkOn", "Look", "Interact", "UseInv", "Talk", "AnyClick", "MouseMove", "PickUp", "Mode8", "Mode9", “Give”, “Pull”, “Push”, “TakeOff”, “PutOn”, “UseWith”, “Read”, “Open”, “Close”, “TurnOn”, “TurnOff”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate” });

Code: AGS
        }


On line 40 on Character.cs:

Code: AGS
  _interactionSchema = new InteractionSchema(new string[] {"$$01 character",

Code: AGS
                "$$02 character","$$03 character","Use inventory on character",

Code: AGS
                "Any click on character", "$$05 character","$$08 character",

Code: AGS
                "$$09 character", “Give”, “Pull”, “Push”, “Take Off”, “Put on”, “Use with”, “Read”, “Open”, “Close”, “Turn on”, “Turn off”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”},

Code: AGS
                new string[] { "Look", "Interact", "Talk", "UseInv", "AnyClick", "PickUp", "Mode8", "Mode9", “Give”, “Pull”, “Push”, “TakeOff”, “PutOn”, “UseWith”, “Read”, “Open”, “Close”, “TurnOn”, “TurnOff”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”  });

Code: AGS
        }


Line 27 in InventoryItem.cs:

Code: AGS
_interactionSchema = new InteractionSchema(new string[] { "$$01 inventory item",

Code: AGS
                "$$02 inventory item", "$$03 inventory item", "Use inventory on this item",

Code: AGS
                "Other click on inventory item", “Give”, “Pull”, “Push”, “Take Off”, “Put on”, “Use with”, “Read”, “Open”, “Close”, “Turn on”, “Turn off”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate” },

Code: AGS
                new string[] { "Look", "Interact", "Talk", "UseInv", "OtherClick", “Give”, “Pull”, “Push”, “TakeOff”, “PutOn”, “UseWith”, “Read”, “Open”, “Close”, “TurnOn”, “TurnOff”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”   });

Code: AGS
        }


On line 33 in RoomObject.cs

Code: AGS
_interactionSchema = new InteractionSchema(new string[] {"$$01 object",

Code: AGS
                "$$02 object", "$$03 object",  "Use inventory on object",

Code: AGS
                "Any click on object",

Code: AGS
                "$$05 object", "$$08 object", "$$09 object", “Give”, “Pull”, “Push”, “Take Off”, “Put on”, “Use with”, “Read”, “Open”, “Close”, “Turn on”, “Turn off”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”},

Code: AGS
                new string[] { "Look", "Interact", "Talk", "UseInv", "AnyClick", "PickUp", "Mode8", "Mode9", “Give”, “Pull”, “Push”, “TakeOff”, “PutOn”, “UseWith”, “Read”, “Open”, “Close”, “TurnOn”, “TurnOff”, “Kiss”, “Kick”, “Punch”, “Slap”, “Lick”, “Instigate”  });

Code: AGS
        }



Am I missing anything, besides the mouse cursors pane issue?
#24
Test 1: What do you think?
#25
General Discussion / The Dark Knight Rises
Fri 20/07/2012 03:05:06
So... Who is looking forward to this? Anyone going to the midnight showing? I am a huge Batman fan. Therefore, I also loved The adventures of Fatman. Anyway... I was just wondering if anyone is going to see it and what they anticipate it will be like. Do you think it will be better than its predecessor? Personally, I think the absence of Heath Ledger will make this a great movie, but not as good as TDK. I love Bane and I think Nolan will do him Justice. I just do not think the general audience will take to him since he is a lesser known actor. Plus, I hate to say this, Ledger's death did boost the movie's viewership a lot and might of worked much like a placebo in everyone's mind in regards to how great his performance was. Do not get me wrong, it was phenominal, however, I do think his death made his work that more appreciated. What do you guys think?
#26
This has been discussed as a desired feature in the past by many in the community, where AGS is split into three applications, 1) The Editor 2)The compiler 3)The engine runtime.

Now I am not sure if anything has been discussed on this end, or if anyone is even willing to work on this at all. I would love to try and port this myself, however, though I am a very good vb programmer, a decent Java programmer and am learning c++ and even if c# seems to incorporate a little each along with its own thing... I cant seem to understand a lick of anything in C#. Its sad, I know, particularly because many rave about it. So, I was wondering if there was anyone who was thinking about undertaking such a project? Of course, that might mean also re-doing how the editor writes its output of the sources. So, I was thinking, why not leave the original editor with a native compiler, but at the same time, write a new compiler that is standalone that can compile sources into an AGS Game file? I know this doesn't make much sense, I am just trying to throw options out there. I guess the work on the AGS Editor to make it perform those functions can come later, once the compiler is done. In any case, I had some idea's on how to incorporate this if it should occur. This would allow custom editors and ports to other operating systems for editing.

Step 1: The folder arrangements.

Much how AGS has a project pane with various categories, the folders would be split up into those categories. So for instance, a tree for a simple AGS Project might look something like this im a game folder:

â"œâ"€â"€â"€Audio
â"œâ"€â"€â"€Characters
â",   â"œâ"€â"€â"€cEgo
â",   â"œâ"€â"€â"€cPumaman
â",   â""â"€â"€â"€cRoger
â"œâ"€â"€â"€EnginePlugins
â"œâ"€â"€â"€Fonts
â",   â"œâ"€â"€â"€Font0
â",   â""â"€â"€â"€Font1
â"œâ"€â"€â"€GeneralSettings
â"œâ"€â"€â"€GlobalScripts
â",   â"œâ"€â"€â"€GlobalScript
â",   â",   â"œâ"€â"€â"€Headers
â",   â",   â""â"€â"€â"€Source
â",   â""â"€â"€â"€RainScript
â",       â"œâ"€â"€â"€Headers
â",       â""â"€â"€â"€Script
â"œâ"€â"€â"€GUIs
â",   â""â"€â"€â"€gGui1
â"œâ"€â"€â"€InventoryItems
â",   â"œâ"€â"€â"€iCrap
â",   â"œâ"€â"€â"€iKey
â",   â""â"€â"€â"€iPod
â"œâ"€â"€â"€MouseCursors
â",   â"œâ"€â"€â"€Look at
â",   â""â"€â"€â"€Walk to
â"œâ"€â"€â"€Rooms
â",   â"œâ"€â"€â"€Room1
â",   â"œâ"€â"€â"€Room2
â",   â""â"€â"€â"€Room301
â"œâ"€â"€â"€Sprites
â",   â"œâ"€â"€â"€Jane Sprites
â",   â""â"€â"€â"€John Sprites
â"œâ"€â"€â"€Translations
â",   â"œâ"€â"€â"€English
â",   â"œâ"€â"€â"€German
â",   â""â"€â"€â"€Italian
â"œâ"€â"€â"€Video
â""â"€â"€â"€Views
    â"œâ"€â"€â"€View1
    â""â"€â"€â"€View2

As you can see, each category has sub folders depending on what each item in it is supposed to have. For instance, under the "View" Folder, you will see View1 and View2 and so on. Those are sub folders for each view you create in the editor. So thats the basic Folder Structure. There is only one Folder that does not appear in the in the original Editor Pane, and that is the Video Folder which you can include video's in. The General Settings Folder will put all the other pane categories in there. We will discuss more on that later.


Step 2: The Makefile

The make file should be in the root directory of the game folder and could be either a text file or XML. Personally, since I develop for Android, I noticed that XML is a very effective way of putting projects together. So, I was thinking that maybe the makefile could be Makefile.xml which would look something like this:

<?xml version="1.0"?>
      <Game>
            <General Settings Folder>
                   Folder:Include="GeneralSettings"
            </General Settings Folder>
            <Gui Folders>
                   Folder:Include="Gui1"
                   Folder:Include="Gui2"
                   Folder:Include="Gui2"
             </Gui Folders>
             <Room Folders>
                   Folder:Include="Room1"
             </Room Folders>
       </Game>     

So then the Compiler would start to grab all those folders and search for their XML file settings and compile what the game needs compiled. The only difference is that the Script folders will not contain any XML file settings, therefore the folders need to be included and the compiler would just automatically iterate through the headers and source sub folders and include all the script files found in there.

Step 3: XML File Settings.

Each Category in a pane, has its own properties. For instance, Lets take a look at the Inventory Item Properties for, lets say, a key. This is how it would look:

<?xml version="1.0"?>
          <Inventory Item id="iKey">
                   <Appearance>
                       <CursorImage>0</CursorImage>
                       <Description>New Inventory Item</Description>
                       <Image>0</image>
                   </Appearance>
                   <Design>
                       <HotspotX>0</HotspotX>
                       <HotspotY>0</HotspotY>
                       <ID>1</ID>
                       <Name>iKey</Name>
                   </Design>
                   <Properties>
                       <Property>Some Property</Property>
                   </Properties>
                   <Events>
                        <Interact>Script</Interact>
                        <Look>Script</Look>
                        <Talk>None</Talk>
                        <Other>None</Other>
                        <Use>Script</Use>
                    </Events>
        </Inventory Item>

Notice a few things in there: Properties and Events. Of course, the properties will be described somewhere else, however you have to specify here to what property the item has in it. You can add more than one property in that bracket of course. Also, look at the events. You have each event listed, but it either has a Script or None in the field. If it has none, that event does nothing. If it has a script in it, it will correspond to the appropriate script function. No need to specify what it is here.

Step 4: General Settings

The GeneralSettings folder will contain a few XML Files to work with:

Settings.XML which will contain all the information on the General Settings pane option in the editor.
TextParser.XML will contain the list of Text Parser items within it.
I think you get the idea, but for completions sake:
LipSync.xml
Dialogs.xml
GlobalVariables.xml

Again, these files will be iterated through when the game is compiled.

Step 5: Rooms

Room scripts will be found in the scripts folder. Each room Script will have its own subfolder called Room# corresponding to the appropriate room Number.

Again, there will be an XML file in the room directory though, that will contain all the room properties and such. However, each room folder will also contain the following sub-folders:

BGScenes  - For all the Background animations it will have.
WalkBehinds - With all the Walk behinds images in it.
Regions  -  Ditto
Hotspots  - Ditto

And each of those folders will also contain XML Files describing the details of those items, for example: Description, name and event procedures.


This is just a preliminary organization for a stand alone compiler. Again, there are some great benefits to this as it would allow an easy interaction editor implementation if we wanted to add one. It would offer a way to edit the game source via a text editor and our own apps. It can allow any of us to create our editors, even ones that are supported on other Operating systems other than Windows. Its just a thought. What are yours?
#27
As I have mentioned before, I am a newbie when it comes to C++ and the AGS Source code. However, after studying the source for weeks now, I am starting to understand how things work a little better, particularly with the refactored code. So I figured I would start these little threads to see if I am getting this right. Perhaps you can help me out with this. I figured that for today I would start by trying to lower or raise the AGS limits in both the engine and the editor. This, in my opinion, seems fairly simple enough to do. However, I am also certain that somewhere in the C++ and C# code, more needs to be done. Please, note, I do not need these limits raised personally (Not yet anyway), its merely a way to get a handle on the code. So lets begin.

Lets say I wanted to raise the following levels:
Max Rooms from 300 to 800
Max inventory items from 300 to 1000
Max Hotspots from 50 to 100
Max number of background animations from 5 to 30

Lets stick with those for now.

For rooms, Hotspots and bscene, this is what we change in common_defines.h in the engine itself:

Code: AGS
 #ifndef __AC_DEFINES_H
#define __AC_DEFINES_H

#define EXIT_NORMAL 91
#define EXIT_CRASH  92

#define ROOM_FILE_VERSION 29
/* room file versions history
8:  final v1.14 release
9:  intermediate v2 alpha releases
10:  v2 alpha-7 release
11:  final v2.00 release
12:  v2.08, to add colour depth byte
13:  v2.14, add walkarea light levels
14:  v2.4, fixed so it saves walkable area 15
15:  v2.41, supports NewInteraction
16:  v2.5
17:  v2.5 - just version change to force room re-compile for new charctr struct
18:  v2.51 - vector scaling
19:  v2.53 - interaction variables
20:  v2.55 - shared palette backgrounds
21:  v2.55 - regions
22:  v2.61 - encrypt room messages
23:  v2.62 - object flags
24:  v2.7  - hotspot script names
25:  v2.72 - game id embedded
26:  v3.0 - new interaction format, and no script source
27:  v3.0 - store Y of bottom of object, not top
28:  v3.0.3 - remove hotspot name length limit
29:  v3.0.3 - high-res coords for object x/y, edges and hotspot walk-to point
*/
#define MAX_INIT_SPR  40
#define MAX_OBJ       16  // max walk-behinds
#define NUM_MISC      20
#define MAXMESS       100
#define NUMOTCON      7                 // number of conditions before standing on
#define NUM_CONDIT    (120 + NUMOTCON)
#define MAX_HOTSPOTS  100   // v2.62 increased from 20 to 30; v2.8 to 50
#define MAX_REGIONS   16

// careful with this - the shadinginfo[] array needs to be
// MAX_WALK_AREAS + 1 if this gets changed
#define MAX_WALK_AREAS 15

#define MAX_SCRIPT_NAME_LEN 20

//const int MISC_COND = MAX_OBJ * 4 + NUMOTCON + MAX_INIT_SPR * 4;

// NUMCONDIT : whataction[0]:  Char walks off left
//                       [1]:  Char walks off right
//                       [2]:  Char walks off bottom
//                       [3]:  Char walks off top
//			 [4]:  First enters screen
//                       [5]:  Every time enters screen
//                       [6]:  execute every loop
//                [5]...[19]:  Char stands on lookat type
//               [20]...[35]:  Look at type
//               [36]...[49]:  Action on type
//               [50]...[65]:  Use inv on type
//               [66]...[75]:  Look at object
//               [76]...[85]:  Action on object
//               [86]...[95]:  Speak to object
//		[96]...[105]:  Use inv on object
//             [106]...[124]:  Misc conditions 1-20

// game ver     whataction[]=
// v1.00              0  :  Go to screen
//                    1  :  Don't do anything
//                    2  :  Can't walk
//                    3  :  Man dies
//                    4  :  Run animation
//                    5  :  Display message
//                    6  :  Remove an object (set object.on=0)
//		                7  :  Remove object & add Val2 to inventory
//                    8  :  Add Val1 to inventory (Val2=num times)
//                    9  :  Run a script
// v1.00 SR-1        10  :  Run graphical script
// v1.1              11  :  Play sound effect SOUND%d.WAV
// v1.12             12  :  Play FLI/FLC animation FLIC%d.FLC or FLIC%d.FLI
//                   13  :  Turn object on
// v2.00             14  :  Run conversation
#define NUMRESPONSE   14
#define NUMCOMMANDS   15
#define GO_TO_SCREEN  0
#define NO_ACTION     1
#define NO_WALK       2
#define MAN_DIES      3
#define RUN_ANIMATE   4
#define SHOW_MESSAGE  5
#define OBJECT_OFF    6
#define OBJECT_INV    7
#define ADD_INV       8
#define RUNSCRIPT     9
#define GRAPHSCRIPT   10
#define PLAY_SOUND    11
#define PLAY_FLI      12
#define OBJECT_ON     13
#define RUN_DIALOG    14


#define MAX_ROOMS 800

#define MAXANIMS      10
#define MAX_FLAGS     15
#define MAXOBJNAMELEN 30
#define MAX_BSCENE    30   // max number of frames in animating bg scene

#define MAX_SPRITES         30000
#define MAX_CURSOR          20


//#ifdef DJGPP
//#include <unistd.h>
//#endif

#ifdef _MSC_VER
#undef VTA_LEFT
#undef VTA_RIGHT
#endif

#ifdef DJGPP
#define PCKD __attribute__((packed))
#else
#define PCKD
#endif

#ifndef int32
#define int32 long
#endif

#ifdef WINDOWS_VERSION
#define AGS_INLINE inline
#else
// the linux compiler won't allow extern inline
#define AGS_INLINE
#endif

// object flags (currently only a char)
#define OBJF_NOINTERACT        1  // not clickable
#define OBJF_NOWALKBEHINDS     2  // ignore walk-behinds
#define OBJF_HASTINT           4  // the tint_* members are valid
#define OBJF_USEREGIONTINTS    8  // obey region tints/light areas
#define OBJF_USEROOMSCALING 0x10  // obey room scaling areas
#define OBJF_SOLID          0x20  // blocks characters from moving
#define OBJF_DELETED        0x40  // object has been deleted

#endif // __AC_DEFINES_H

For Characterinfo.h, on line 7:
Code: AGS
#define MAX_INV             1001


Now for the editor.  In game.cs line 22:
Code: AGS
public const int MAX_INV_ITEMS = 1000;


In agsdefns.sh on line 8

Code: AGS
#define MAX_INV 1001


In room.cs, starting at line 14:
Code: AGS
 public const int MAX_BACKGROUNDS = 30;
        public const int MAX_OBJECTS = 40;
        public const int MAX_HOTSPOTS = 100;
        public const int MAX_WALKABLE_AREAS = 16;
        public const int MAX_WALK_BEHINDS = 16;
        public const int MAX_REGIONS = 16;


in unloadedroom.cs on line 15:

Code: AGS
public const int NON_STATE_SAVING_INDEX = 800;


Now, I mostly figured the engine iterates through the defined constants to decide what their limits are and the same with the Editor. So, making those modifications, I am "assuming" would be more than enough. Am I correct? If so, I will start a new thread with the next lesson for me. If I am wrong however, please, teach me oh wise ones!
#28
http://phpbbsocialnetwork.com/

What do you think? Worth it or not? I say go for it. Its a good alternative to twitter and facebook and offers a way for members to alert other members to what they are doing.
#29
I was thinking that the forums can perhaps use this over here: http://www.phpbb.com/community/viewtopic.php?f=70=2097006&sid=be6af7dacc21b9e3d70815a20c3efa54 as a way to do recruiting rather than have a whole forum dedicated to it. Just a thought.
#30
With so many recent idea's on how AGS should move forward and seeing some debates as to what to replace as part of AGS' core, I think this still merrits discussion. Now I know we have many threads about this already, but this is to be a fresh approach to the discussion. We are going in circles and this discussion is meant to say: "ENOUGH. Lets get going and moving forward with this the way Chris wanted it to." No more idea's, no more planning who is going to do what. This discussion is meant to end that.

AGS has come along way since its been open sourced. I give a lot of credit to CJ for doing this. However, I think that the community is getting lost and might even be thinking too big in terms of changes to continue making. People also just have their own idea's as to what they want to see, so everyone has been just going and doing there own thing. While, some progress has been made, its not enough and its not collaborated with each other.

I think sometimes we forget that AGS can do a lot more than many of the adventure game engines we have seen throughout history such as SCUMM, SCI, AGI, AGAST, MAD, Sludge, Glumol, etc... AGS is powerful. AGS is not meant to really be competition for other engines, but rather a tool of personal choice. AGS' goal is not to be a programming language, it is meant to be an Adventure game engine that allows us to easily, quickly and efficiently create adventure games. Though we can add other elements such as action or 3d shootem ups (With a lot of work) or create applications such as calculators, etc... AGS is meant to primarily, and in all fairness, only be a 2D adventure game engine. I feel that part of the reason with Chris taking so long to make AGS open source is that we would forget these things. Does it mean we cant expand on its functionality? No. Does it mean AGS should be strictly used for 2D Adventure games? Does it mean we cant add other gaming aspects within our game? No. But, some are considering altering everything thats at the core of AGS. If you look at many threads, some want AGS to use an embedded scripting language rather than the built in AGS Script which Chris spent years improving and developing. Its something unique to AGS. Others would want to take out the pure foundation of AGS, which is Allegro, and swap it out with SDL. Some even would prefer that AGS not be a community project, but a SCUMMVM project. Did we not notice over the past 13 years that Chris has not done any of those things? Its probably for a reason.

So then, my question is, why completely alter AGS' core? Why change what its supposed to be? Why dismantle Chris' baby? I feel as if this is a slap in the face to Chris, as if we are saying:"You made all the wrong decisions with AGS, so now we are going to replace its brain, heart and lungs and fix its guts." If there are those who want to recreate something, just go ahead and create a new game engine. Thats the way I look at it anyway. Also, I know Chris had mentioned the time factor for releasing AGS open source. Meaning, he wants development to proceed more quickly than it had been recently. If we replace the brain, the heart, the lungs and guts of AGS, wouldn't that slow development down? Couldn't it break so much within the engine itself? That in itself would have us looking for bugs that would not be there if we left things alone. Lets remember, AGS is not a shell. It is what it is: AGS.

Now, while AGS should always remain open source and the community should always be able to see the changes going on every day with AGS such as on Gitorious or Github, what AGS really needs is a dedicated team that will work, wait for it.... TOGETHER. With one purpose and one thought. So, in this discussion, I am going to propose something, and I hope this becomes the official way of doing so.

So for starters, I know some have already done this, but as I said, we need a team that is dedicated to the development of AGS. Some are working together, but now its time to add to the team. My proposed AGS Dream team would be this:

Chris Jones (Project creator/ AGS GOD)
Steve Mcrea/ Kweepa (Project porting)
EvilTypeGuy, if he is around (Porting)
Electroshokker (Porting)
JJS (Project Organzier, Refactoring, Engine core implementation, Porting, Daily Builds, Engine Coding Team Leader, Bug fixes, Idea Team)
Tobihan (Project Organizer, Refactoring, Engine Core implementation, porting, daily builds, Bug Fixes)
Alan V Drake (Project Organizer, Engine Core Implementation, IDE Core implementation, IDE Coding Team Leader, Idea Team)
Calin Leafshade (Project Organzier, Engine Core Implementation, IDE Core Implementation, Bug Fixes, Idea Team)
Crimson Wizard (Project Organizer, Porting, Bug Fixes, Engine Core Implementation Team, Idea Team)
Monkey_05_06 (Project Organzier, Bug Fixes, Engine Core Implementation Team, IDE Core Implementation Team, Idea Team)
Tzach Shabtay (IDE Implementation Team)
ProgzMax (Project Organizer, IDE Implementation Team)
Steven Poulton (IDE Implementation Team)
Nefasto (IDE Implementation Team)
Denzil Quixode (Idea Team, Feature Implementation Team, IDE Core Implementation Team, Engine Core Implementation Team)

Wyz (Feature Implementation Team, Idea Team)
SpeechCenter (Feature Implementation Team, Idea Team, IDE Core Implementation)
Strazer (Feature Implementation Team, Idea Team)
AJA (Feature Implementation Team, Idea Team)
DKH (Feature Implementation Team, Idea Team)
Besh (Feature Implementation Team, Idea Team)
Endmundito (Feature Implementation Team, Idea Team)
Dualnames (Feature Implementation Team, Module Team, Demo Game Team, Idea Team)
Iceman (Feature Implementation Team, Module Team, Idea Team)
Wretched (Feature Implementation Team, Idea Team)
Ali (Feature Implementation Team, Idea Team)
Khris (Feature Implementation, Module Team, Idea Team)

AGA (Project Organizer, Bugs Tracking, Graphics implementation, Implementation Idea Team, Forum Administrator, Dev Team Rules enforcer)
MODS (Project Organizer, Bug Tracking, Implementation Idea team, Forum Moderator, Dev Team Rules enforcer)
abstauber (Template Designer Leader, Help File writer, Idea Team, Dev Team Rules enforcer)
RickJ (Demo Game Leader, Template designer, Help File Writer, Idea Team, Tutorials, Dev Team Rules enforcer)
Darth Mandarb (Project Organizer, Bugs Tracking, Forum Moderator, Idea TeamDev Team Rules enforcer)
Joseph DiPerla (Project Organizer, Bugs Tracking, Implementation Idea Team, Help File Writer, Dev Team Rules enforcer)
Snarky (Project Organizer, Bug Tracking, Implementation Idea Team, Dev Team Rules Enforcer)

"There is wisdom in the multitude of counselors". - Therefore, there will be no one team leader. Just idea's, polls and enforcers. We will all be equal. The only person who trumps any decision or code is CJ.

------------------------------------------------------------------------------

Now, with an ideal team (The dream team, as some would say) set in place, I think I need to mention a few things so that this does not look overwhelming and disorganized. First off, I think the development team will need a private forum to discuss various things together. If an entire community gets involved, then things get messy, arguments will follow and things will never get done. We have a development forum, but the official development team needs to have somewhere private to talk about the important organized stuff that has to go on.

So, now though, lets talk about the various rules, roles, Stages, etc...  that need to take place for this to happen in an organized way:

Private Development Team Forum Structure (Note, coders and project organizers have access to all forums. The Dev Team Enforcers have moderator status for the Suggestions and idea implementation forums. Members allowed access to the other forums are also moderators for that particular forum.):

General Forum - For everyone on the team.
Suggestions - a place for us to offer suggestions
Code Review - a place for just the coders to review source code and discuss the best approach to implement something or fix a bug.
Idea Implementation - a place for the idea team, module team, graphic implementation team, Dev Team enforcers, Demo game Team to talk.
Bug Trackers - a Place for the bug tracking team and bug fixers to organize when bugs are fixed and for what editions they were fixed for.
Porting - a place for the porters to discuss porting options and to discuss the best approach to take.
Engine Core Implementation - for only those team members.
IDE Core Implementation - for only those team members.
Help File writers - a place for the help file team to write the, well, helpfile.
Project Organization - for those that are on the project organization team. Here they will discuss when a new release should be announced to the community and also discuss how the progress is going.
Monthly check in - For everyone to post what they have done for the month. Reports will be compiled once a month. One of the Dev Team Enforcers will initiate the thread each month.

Roles:
AGS GOD - Self Explanatory.
Porting - Those whose responsibilities will include the proper way to port the engine or IDE to other OS's and make sure nothing is broken and that all works well.
Project Organizers - will ensure that that everything is done in an organized way as well as determine the release of the new versions of AGS. They also keep track of everything thats going on.
Bug tracking team - They will track bugs and features that the community reports.
Dev Team Enforcers - They will ensure that everyone is following the guidelines written in this discussion.
Implementation Idea Team- They come up with what AGS needs next.
Engine Core Implementation Team and IDE Core Team - Each will focus on implementing features and bug fixes for either the IDE or the Engine itself.

The other stuff is self explanatory and any team leader can lead the team in however they want as well as request new members.


Rules to follow:
1. Code will be done via Github.
2. Code Documentation - No code is to be added to the engine or IDE without writing detailed documentation of the steps that you took to implement the code and such.
3. No code is to be officially implemented until the coding team can look over the code, assess the situation, see if there is a refinement they need to add to it and then implement it and merge it with the official source code. So for that, maybe we would need a muck up code project on Github and an official one as well.
4. Bug Tracking - The bug tracking team will listen for bugs on the forum and post it in the bug tracker, as well as feature requests. Once in the bug tracker, any DEVELOPER can then choose to handle the bug or feature request and assign themselves to it in the bug tracker. Once thats done, under the bug/feature thread, they are to post updates as to what they are doing to handle the situation so that the team can make sure that action is being taken. Once done, they will mark it off on the bug tracker as being completed. Then they will alert the Project Organizers, Bug tracking team and Idea Implementation team that it has been taken care of.
5. If someone would like to propose an idea, the idea would be discussed for 2 weeks with the entire team. Once everyone has made their case, the individual who came up with the idea can ask to keep his case open for discussion for one more week, or a poll is created to see if the rest of the development team would like to proceed with the implementation. Anyone can propose anything. However, once a decision has been made, action will be taken. If the idea was approved, it goes into the bug tracker. If it has been rejected, it will go into a rejected idea's thread in which the idea can not be brought up for discussion again for a minimum of six months. If an idea will be rejected three times, the idea will go into a forbidden idea thread in which it can never be brought up again.
6. It is the job of any member of the development team to offer a suggestion to be implemented. However, to discourage clutter, each team member will only be allowed to suggest one thing for the engine core and one thing for the ide every two months. Although, the Implementation Idea team members can suggest up to two idea's for each per month. It is their job after all.
7. This is a free, volunteer project. No team member is forced to work on anything if they cannot. However, if you feel that you would not be able to commit to the team in anyway for 6 months or more, it would be wise to step down as a member until you can.

Development rules to follow:
1. No swapping out of Allegro for anything else, such as SDL. However, other graphics engines can be used to supplement Allegro for whatever reason. We want the core of AGS to remain the core of AGS.
2. AGS Script will remain the default scripting language for AGS and will continue to be developed on. However, if you want to add another scripting language, it should be as an alternative in the sense of how Extern C works in C++ or in the fact that one can add a module or script that can be used within AGS. However, AGS Script will still remain the primary Scripting language for AGS.
3. If a member of the Engine Core Team Implements a feature that requires an adjustment to the IDE, they must post that adjustment within the bug tracker for an IDE developer to take on. Until someone takes it on and implements it into the IDE, that feature can exist within AGS, however, it will not be mentioned within the release of any version of AGS until it is supported within the IDE as well.
4. When a new feature is implemented, the person who wrote the function must explain it to the Help file writer team and the project organizers so that they can put it in the help file. After that, the Demo Game Team will find a way to implement the new feature, if it applies, within the game so that the community will be able to see how they can use it and also see a demonstration of it working.
5. No working with the SCUMM Team, atleast not for now. AGS is AGS, not AGS SCUMM. Perhaps way in the future, this can be considered.

Release Rules to follow:
1. The project Organizers will determine when the next version of AGS is to be released, depending on if they feel that the bugfixes and features implemented warrants a new current release.
2. Once they determine that, a brief internal testing period will go on in which the team will test the demo game/ IDE to see if anything is broken.
3. If all looks good, the team releases a Alpha version to the public.
4. If the public finds any bugs, the development team is to stop implementing any new features and work on destroying those bugs once and for all.
5. Once thats done, a Beta version is released. If all looks good, move on to the next step. If not, repeat steps 4 and 5.
6. If its all good, release the official version.


When to accept new members to the team:
There really are no guidelines for this, however, the community and the development team must be able to trust you and you must prove yourself worthy. Perhaps a person who wants to join the idea team would need to either be a long time member of the forums, or a person who has shown that they can create a game. A developer would need to prove themselves by perhaps creating modules, tutorials or plugins, etc... Really, there are no set strategies to determine who joins the team or not. The only real stipulation, so to not over crowd the team, would be that the only time we accept new members to the team is when one team member steps down for whatever reason. A new member acceptance would need to then be accepted via a vote from the team members which will go on for one week.

Priorities for the time being:
Stage 1: Code Refactoring.
Lets let the refactoring team take care of this first. Without doing anything else, let them optimize the code sources and structure and what not. Once this is done, we can begin the next stage:

Stage 2: Documenting the engine source code. This will pretty much be an ongoing thing past the other stages.

Stage 3: Fixing the current ports that exist.
Rather than begin porting to a new OS, the team will focus on making sure that the current ports are functioning and doing what they should to work on their respective OS. Once thats done, it really paves the way for any new port that will be considered.

Stage 4: Modernizing the engine a bit:
Just so AGS can keep up with other modern 2D adventure game engines: A) Remove Limits  B) Allow more resolutions and custom resolutions. C) A compilation option for IPhone and Android   D) Proper Paralax Scrolling   E) A more fully integrated particle effects engine  F) 2.5D Capabilities G) Advanced FMV.

Stage 5: Discuss Goals for AGS.

Stage 6: Proceed with further development.

------------------------------------------------

I know this is a long read and I know this has been discussed to a frustrating degree. But I put a lot of work into this, I didn't just want it lost within other threads. Plus, I think someone really needed to take pointed and affirmative action to unite the developers and to also find a way to properly continue to develop AGS. I hope noone is offended, but if you really think this is a great idea, perhaps we need to start working on doing this now.
#31
This community has been so good to me. I owe a lot to everyone here, especially CJ and several of the other members who were able to help me financially. I want to give back to all of you. I don't know how I could do that. I want to make a game, but I suck at graphics. I really do. But I am gonna have to give you all something I can do.

There is no easy way to package an AGS game for Android so that it can be uploaded to the android market. Not yet anyway. I am trying my hand at C# and am trying to implement a way that would offer the user to compile the game for android. What it would do is take JJS sourcecode, compile it and package with your game via a command to the external Android Compilers. This is a little tricky and will require some time. However, in the meantime, I would like to offer a service which will become available Starting July 15th. This service will be queue based and what it offers is for me to compile your game (No game sources required, just the game data and executables) with AGS into an APK so you can upload it to the Android market. The price for such a service: FREE. COMPLETELY FREE. But because of that, your game will have to wait in queue to be packaged. Here are the options however if you would like to package the game:

1) You can have your game compiled with a version of AGS that only loads your game and not anyone elses.
2) You can have your game compiled with a version of AGS that allows the current full version of JJS's port of AGS that loads games from a list.
3) You can have your game compiled into an APK Installer so that AGS is not attached to the game data (For those who already have AGS installed on their devices).

I am still trying to figure out all the complications of this, but I wanted you to get ready for it. What I can also do is this:

1) Send you a link to the APK so that you can upload to your google account store.
2) I can upload it to my account and have it be under my developer name.

So if you are interested, keep this in mind, figure out which choices you want and stay tuned for more information.
#32
OK, this has been something I have wanted to do for years and I am hoping I can find a team that would help me on this. While I know I need more members for music, voice acting and translations, at the moment I only want to begin with Graphic artists.

As mentioned above I am looking for 3D Graphic artists for backgrounds of the game and character art and animation. The whole story is already written out and I am adding some more stuff to the game with input I received from David Fox himself a year ago. So I know what I want and how I want it. The question is, is there anyone willing to do this for free.

I considered doing a Kickstarter on this, but I want to avoid that route and am looking for artists to work for free. However, if I cant find anyone willing to do it for free, please tell me how much you want to get paid or how payment for 3D art works and I will start coming up with some figures for Kickstarter then. But please note, if you work for free, you can take your time on the project. If I have to pay you, then I will expect faster results, especially since those on Kickstarter who pledge would want to see faster results.

The art style I am looking for is a rather mix between 3D anime and DOTT Style. I actually want the game to be brighter rather than darker, atleast for the earth renderings. I kind of almost want a toon shader rendering. Not quite toon colored, but on its way there. I hope that makes sense.

Please note: Before I accept you on the team, I want to see some work from you to see if you are what I am looking for. If you will want payment, I am expecting some mockups of characters and Backgrounds for the game free of charge so that I can have something to present the Kickstarter community with. The more they can see, the better the odds of people pledging.

If you are interested, please post here. Do not PM me. I will PM you after you post here.

Thanks for looking. I hope I can find someone to help me fulfill this dream of mine. Lets go Blue Cups!
#33
I just wanted to post this to our wannabe commercial developers. They seem to offer a very VERY reasonable price for a cd and jewel case ($1.00 US) as their base price. If you do not want to read the rest of this message, just go to http://www.kunaki.com, otherwise, here are some details:


CD with jewel case includes:
manufacturing/assembly
full color CD printing
jewel case
full color 2-panel insert
full color tray card
cellophane wrapping
UPC bar code
24-Hour rush manufacturing
all inclusive price
$1.00*


DVD with DVD case includes:
manufacturing / assembly
full color DVD printing
DVD case
full color 1-panel insert
full color DVD case cover
cellophane wrapping
UPC bar code
24-hour rush manufacturing
all inclusive price
$1.00*


Retail quality.    Full-color, glossy, fully assembled, cellophane-wrapped, high-quality, retail-ready products with free UPC bar codes.

No minimums, commitments, or contracts.    And, no setup, mastering, or hidden charges.

No risk.    We send you a free review copy of your product.

Fast and simple.    Design, configure, and manufacture in one day. Use our software to design your disc, case, inserts; and select your contents.

Order what you need when you need it.    We can drop-ship to any address. Just-in-time production means risk-free, zero warehousing costs.

Automatic fulfillment.    Use our XML, HTTP, web service, PayPal, CSV, and manual interfaces to manufacture and ship one or more units to your customers.

Publish at no cost to you.    Our automated factory also accepts credit-card orders on your behalf to instantly manufacture and ship your products to your customers. We report sales with customer names/addresses to you and send you a check each month for an amount equal to the quantity sold multiplied by the price you set.

You can order small quantities whenever you need them at the same low price.
You don't incur risk, upfront costs, and inventory. We even ship you a free review copy.
Your time to market is faster and easier. You can design, configure and manufacture in one day.
You get retail quality, cellophane wrapped products with free UPC bar codes (more information about UPC bar codes is available here).
You can use our "publish at no cost to you" service (Details below).
We can drop-ship directly to stores, and customers. Distributors can be restocked when needed.
You can sell your products at CD Baby (more info) and Amazon (more info) and Kunaki can manufacture and drop-ship inventory to these retail outlets.
You can integrate our digital manufacturing system into your own process with our XML order entry system. Your process sends our facility an order (name, address, and product id) in XML format and we manufacture and ship directly to the recipient. More information about our XML web service is here.

You set the retail price. We set up a sales page for your product; accept credit-card or paypal orders on your behalf; manufacture and ship directly to your customers -- on demand.
The service integrates manufacturing, order-taking, packing, shipping, tracking, accounting, and customer service into one seamless, frictionless system that minimizes costs, errors and time.
We provide you with real-time accounting data, customer names and addresses.

Yes, you retain full copyright to your product. More information about registering your copyright with the U.S. Copyright Office is available here.

Here's a FAQ: http://kunaki.com/answers.htm

Just thought you all should know about it.
#34
Hello fellow AGSers. I know most of you have known me since the beginning way back in the late 90's. I really feel embarrassed to do this, but I have come into desperate times recently and am in need of financial assistance. I recently had a baby girl, Ava, who was born on December 13th 2011. My wife and I have been out of work for the past 4 months and we are facing eviction from our apartment. On top of that, our vehicle is facing repossession.

I hate doing this and feel really embarrassed, but I am trying every single avenue I can find in order to better this situation.

I have finally found a job and will start in two weeks and my wife goes back to work next month(due to illness, she had been out). Unfortunately I need to pay these bills this week. I am short $2325 that I really need this week. I am trying to sell items on ebay, which I will post links to here tomorrow. But even with that, I will still be short. I have already sold so many things that I own such as my PS3, my Wii, my TV, an old pc and my wifes tablet to help pay for some of my other debt. I am almost ready to sell my own tablet as well. I have asked some other friends and my family for a loan as well and they provided what they could, but now I am short the rest.

To break it down, I need to get $955 for rent and $1370 (all from months of not being able to pay it) for our car payment. This is our only car and we live in CT where we absolutely need a car since there is no walking around here. Our loan company has been more than generous in not repoing our car from lack of non-payment. But now they reached a boiling point.

What I am asking is for a sort of loan-me-a-charity thing here. If anyone can loan me some money, I can gaurentee these things for those that do:

*I will repay what you gave me within 3 months. However, six months would be ideal if you could spare it.
*I will promise to continue work on the AGS Marketplace for Android.
*I will promise to release a game this year, which you will get to play before everyone else.

So basically, consider this as sort of an unofficial kickstarter for Joey DiPerla. Again, I hate to ask this, but with a baby now in our care, and with a whole streak of bad luck and a bad economy and illness, I am desperate and need to use all options.

If you are able to loan me some money towards my debt mentioned above, please DM me. I apologize for the inconvenience and hope that you can all understand my situation and can forgive me for asking such a horrible thing. :(

-JD
#35
As you may have seen here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=45453.0
I developed a marketplace app (In its alpha stages) for AGS games to be downloaded onto Android devices easily.

Before I work this up a little further, I need games to be submitted to the marketplace. To do that, I am asking that anyone with games created for AGS 2.62 and up who would like to make their games available for Android should go to this link here: http://www.diperla.com/agsstream/agsstream.htm .

Just keep in mind the instructions placed in the fields at that link. So just a heads up, when submitting a game, screenshots need to be hotlinkable. Downloads of the game need to be in a zip file. The zip file can contain folders but the main game files (agsdat or exe file) need to be in the root of the zip. The zip file also needs to be hosted on a hotlinkable site. You can use netfirms or hostgator or bluehosting for cheap hosting needs or even dropbox which gives you 2gb free for you to use. If you do not follow these guidelines, you will not submit the game properly.

So if you are interested in making your game more accessible to android users go follow this link again:
http://www.diperla.com/agsstream/agsstream.htm
#36
http://dl.dropbox.com/u/63498272/AGSStream.apk

OK, so I have started a new project for AGS. This is a marketplace for AGS on Android. Packaging Games into the AGS APK is a hassle if not impossible. So I started this project this way it can be a place for those interested in AGS to download games automatically. Also, since many have had trouble in knowing where to extract the game files (including myself), I have made this utility as a way to download the game for you and put the files where they need to be. All you have to do is run AGS and choose the game you want to play.

Now, keep in mind, this is a super Alpha version of the market( Hence version 0.0.1) and was only done in 20 minutes. In the next couple of weeks I will be prettying it up and adding more games to the list. Right now it only has Space Quest -1. Test it out.

Here is a roadmap of what I plan to have done:

Features of Version 0.1.0 (Will be released in the next two weeks:
*Scroll through a list of games to choose from
*Ability to download the latest version of AGS for Android and install it.
*Featured Games page.
*Ability to download and install games automatically.
*Ability to run AGS from within the app.
*The Game page features a description, images, creators, team, etc.. and other features for each game.
*Has the ability to tell you if a game has already been downloaded from the market.

Roadmap (Not Guaranteed):
Version 0.1.1 will have:
*A hopefully nicer UI
*The ability to rate games and add comments.
*Sort by Genre feature - Hopefully.

Version 0.1.2:
*Ability to uninstall a game.
*Ability to search for a game.

Future:
*Stability fixes
*Even Nicer UI
*Ability to sell commercial games.
*Ability for users to upload their own games to the market.
*Have more games listed in the market.

---------------------------------------------

For the time being, this app will not support commercial projects. Its too much of a hassle. However, if you have a commercial game and would like it on the Android Market for download, I will create a special package that will download AGS and the game for you and set it all up for you. I will also walk you through creating a developer account on the android market and teach you how to upload the game so that you can make cash. If you are interested in this, please PM me.

In the meantime, check out version 0.0.1 of the app and be kind in your criticism of it. We just had a baby a couple of months ago and all I could do is 20 minutes of work on it today. Enjoy. Here is the link again:

http://dl.dropbox.com/u/63498272/AGSStream.apk


---------------------------------------------

Version 0.0.2: 2/23/12
*Added the ability to automatically download and install AGS for Android.
http://dl.dropbox.com/u/63498272/AGSStream.apk

Version 0.0.3: 2/23/12
*Fixed a couple of bugs.
#37
Hi guys, I have been searching hi and low for this and I figured if there is anyone out there that can help me with this, it would be the AGS community.

Basically I am looking for an Embeddable scripting language for C++. I have looked at AngelScript, Gamemonkey, ChaiScript, Gecko and LUA as well as Squirrel. I am not really satisfied with them to tell you the truth. If anyone has any idea's, I would really like some help on this. I remember there was SeeR years ago and I really liked that scripting engine, however, its no longer available or supported. So just so you guys know what I am looking for in this:

*Free or very cheap.
*C++ Language Syntax.
*Cross-platform to Desktop OS's and mobile ones.
*GPL, LGPL, Artistic License, etc... You get the idea.
*Small footprint.
*Embeddable.
*Classes and Inheritance
*Exception handling
*Asynchronous support.
*Decent Speed.

Any idea's
#38
Website: http://www.rawmaterialsoftware.com/juce.php

What is it:
JUCE (Jules' Utility Class Extensions) is an all-encompassing C++ class library for developing cross-platform software.

It contains pretty much everything you're likely to need to create most applications, and is particularly well-suited for building highly-customised GUIs, and for handling graphics and sound.

Supported systems:
JUCE can target the following platforms:

    Mac OSX - Applications and VST/AudioUnit/RTAS/NPAPI plugins can be compiled with Xcode for OSX 10.4 or later.
    iOS - Native iPhone and iPad apps can be built with Xcode.
    Windows - Applications and VST/RTAS/NPAPI/ActiveX plugins can be built using MS Visual Studio. The results are all fully compatible with Windows XP, Vista or Win7.
    Linux - Applications and plugins can be built for any kernel 2.6 or later.
    Android - NEW! Android apps can now be built using Ant and Eclipse, with the Android NDK v5 or later. (This is still a work in progress, so some features aren't still to be finished).

For all the platforms above, the code that you write is the same, and you don't need to worry about any platform-specific details. If your C++ is portable, then you should be able to simply re-compile your app to run it on other OSes.


Design and coding style:
In designing JUCE, I've tried to make it:

    Literate - class, method and variable names are clear, self-explanatory and consistent. It's vital in such a large library that when you look at a class, it should be obvious how it works; and when you use a class in your own code, the result should be as readable as possible. The best way to achieve this is by using well-written names.
    Coherent - a library needs to be predictable enough that once you've got a feel for the way things are arranged, you can navigate around it without any surprises. If you need to do a particular task, you should be able to guess what the classes to do it might be called and find them quickly. (Having a single person write the entire library helps with this!)
    Cross-platform - platform-dependent code is all confined to a single area and kept out away from public view. When you include juce.h, you only include pure C++ classes, it won't pull in any platform-dependent headers. Wherever it's possible to use a pure C++ technique instead of native functionality, I've done so.
    High Quality C++ - having been a professional C++ coder for 15 years, and having studied all the available C++ guru literature, I think I'm finally starting to get the hang of it! Every class in the library is intended to be a good example of the best possible coding practices - so if you spot anything dodgy in there, don't hesitate to let me know!



Integrating into a project:
Adding JUCE to your app is very simple - the easiest way involves simply including juce.h in your files and adding a single cpp file to your project. No need to compile any libraries or worry about dependencies. Ideally I'd like to have made JUCE an include-only library like the std c++ library.. that's not actually possible because of the platform-specific nastiness that it has to deal with, but to be able to add a complete multi-platform library to your app in only two steps is a pretty good result!

Of course JUCE can also be built as a static library and linked into your application in the traditional way. Or you can use it in its 'amalgamated' form, where the entire library (all 350,000 lines of it!) has been cunningly compressed into just two (large!) source files. Having only two files to deal with means that you can easily add a local copy of them to a project and check them into your source control system, avoiding any external dependencies.

To further simplify the process of building across multiple platforms, the Introjucer will automatically generate all the compiler-specific project files you need to get the same app running in Xcode, Visual Studio, etc. Just use the Introjucer's IDE to build your project, and it'll take care of the hassle involved in keeping several different IDE projects in sync with each other.



License:
JUCE is released under the GNU Public Licence, which means it can be freely copied and distributed, and costs nothing to use in open-source applications.

If you'd like to release a closed-source application that uses JUCE, commercial licences are available for a fee - click here for more information on pricing and terms.
#39
General Discussion / New Adventure Gaming Blog
Sat 26/11/2011 23:10:25
I started two new blogs, one is related to adventure games and the other to Android Devices. I posted my first article which is actually a nice cross-over article between the two. If you want to take a read, I will try to post a few times a week on each:

http://longliveags.blogspot.com/
http://androidgetsit.blogspot.com/
#40
We have all been there, I suppose. We start a project, or have an idea and then we move on to something else. After years, you have a closet full of adventure games that have never come out of the wood-work. Lets face it, that was me as well.

I have worked over the years to create Two Simpsons games which have ever only made it to demo's. I have of course created a Simpsons Template for AGS 2.71 which I am proud of that can fully be used to make a game, if someone wanted to. I will upload that template at some point for you all again. That is my pride and joy for AGS. It contained about 9 characters, 40 rooms, tons of GUI's and such and much more. I think though, with lack of drawing talent and resources on the web for what I am looking for, that template has reached its limit of what it could be. And to be honest, over the years, my interest in the Simpsons games and project has diminished. Of course if someone would make a game using the template, I would certainly play it.

Lets not forget that there were other projects I never fully finished such as my very first project before I even knew of AGS, which was my Zak McKracken sequel with Maniac Mansion Crossovers. I had gained some popularity with that game on the web. I was considered at the time one of the main Zak 2 projects and actually had some rooms designed and was using Maker R2 to code it. But of course, for being a teenager, that was also an ambitious project and I was falling way behind the other projects out there. So I dropped it.

I had tinkered with the idea of creating a RON game, but that faded quickly. I even thought of creating a video game based on the tv show Psych. Unfortunately I dropped that as well.

My problems with all these games? Lack of graphics artist. I could not draw for the life of me. I couldn't even draw a simple four wall, baron room in sierra AGI style. I always had a difficult time even finding artists to help with my projects. Even when attempting to draw stick figures I would fail at that as well.

So, for the last few months, I have been trying a new approach to things. USING FREE CUSTOMIZABLE RESOURCES. The best way I found to do that, is to use 3D software. I seem to have better luck with that that with anything else. I have been practicing and though I am not a great 3D artist, or even a good one at that, I have been able to create some things that have impressed me. So I dropped all these other projects, or at the very least put them on hold until I finish my next project: Justice League: United. Its a game based on the heroes of the DC Comics brand.

Its ambitious, but I am letting go of my other projects for now to work on this. I am using DX Studio, Poser, Daz Studio 3D, Bryce, Blender and XWorld 3D to create my graphics. I have tinkered with a few scenes and I like how I have developed them. Keep in mind, these are not going to be mind blowing graphics, but they will atleast allow the game to be playable.

So, I ask for encouragement as I try this new phase of Adventure Game Development. Hopefully, some time in the near future, I would have completed my first full AGS game.
SMF spam blocked by CleanTalk