Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » TINS promotion

This thread is locked; no one can reply to it. rss feed Print
 1   2 
TINS promotion
amarillion
Member #940
January 2001
avatar

Would you like to help me promote TINS?

I've prepared some generic posters (see attachments to this post). I'm going to hang these near the coffee machine in my office. Maybe somebody else wants to take this and do the same?

By the way, I could still use some bumps here: https://www.gamedev.net/forums/topic/692203-72h-speedhack-with-allegro-held-oct-20-23/

And does anybody know how to get a hold of Matthew nowadays? My Allegro.cc news post has been queued for months now...

Gideon Weems
Member #3,925
October 2003

And does anybody know how to get a hold of Matthew nowadays?

He responds to some topics in the Allegro.cc Comments section, suggesting he may receive some kind of activity notification.

If you really want to promote TINS, (ab)use the #LudumDare hashtag.

amarillion
Member #940
January 2001
avatar

Do you think Matthew has an email subscription to posts in Allegro.cc comments? Does that mean he gets an email for every post in the "Thread locks too soon" thread?

I'll give #LudumDare a try too

Specter Phoenix
Member #1,425
July 2001
avatar

I'll be interested in seeing if this pans out since most of the games I ever played during LD compos were created using Unity or GameMaker.

amarillion
Member #940
January 2001
avatar

I'll be interested in seeing if this pans out

Pans out? What do you mean?

bamccaig
Member #7,536
July 2006
avatar

amarillion
Member #940
January 2001
avatar

Sure >:( How about the follow up on my blog >:( Does that inspire you as well? ???

;) ;) ;)

Specter Phoenix
Member #1,425
July 2001
avatar

Pans out? What do you mean?

To see if you get a lot of non-A.cc people joining.

amarillion
Member #940
January 2001
avatar

Ah, I get what you mean now. You want to see if there are any non a.cc people who can be enticed to use Allegro.

Well, I'm curious myself. When we discussed this a while ago, I proposed dropping the allegro requirement. But most people here considered this an essential feature.

bamccaig
Member #7,536
July 2006
avatar

Specter Phoenix
Member #1,425
July 2001
avatar

I joined, but with my son's health there is no guarantee I'll get anything done.

bamccaig
Member #7,536
July 2006
avatar

Still motivated. >:(

video

This is an amusing bug. Here's what the diff looks like:

0001-Unify-the-timers-into-a-single-timer.patch#SelectExpand
1From 080311358811107848ffba0d8b5a57dade21e3c1 Mon Sep 17 00:00:00 2001 2From: Brandon McCaig <bam***********@*****il.com> 3Date: Sat, 30 Sep 2017 02:21:59 -0400 4Subject: [PATCH] Unify the timers into a single timer. 5 6--- 7 main.c | 57 ++++++++++++++++++++++----------------------------------- 8 1 file changed, 22 insertions(+), 35 deletions(-) 9 10diff --git a/main.c b/main.c 11index fdac40f..17bf5f4 100644 12--- a/main.c 13+++ b/main.c 14@@ -15,6 +15,7 @@ 15 #define magicpink (al_map_rgb(255, 0, 255)) 16 #define white (al_map_rgb(255, 255, 255)) 17 18+const int TICKS_PER_SECOND = 60; 19 const int GFX_FPS = 10; 20 const int GRAVITY = 1; 21 const int LOGIC_FPS = 1; 22@@ -85,11 +86,11 @@ typedef struct { 23 int redraw; 24 int respawn; 25 int status; 26+ int ticks; 27 28 ALLEGRO_DISPLAY * display; 29 ALLEGRO_EVENT_QUEUE * events; 30- ALLEGRO_TIMER * gfx_timer; 31- ALLEGRO_TIMER * logic_timer; 32+ ALLEGRO_TIMER * timer; 33 GAME_BOARD * game_board; 34 GAME_PIECE * current_piece; 35 LINKED_LIST * pieces; 36@@ -213,16 +214,13 @@ int main(int argc, char * argv[]) 37 goto exit; 38 } 39 40- al_start_timer(S.gfx_timer); 41- al_start_timer(S.logic_timer); 42+ al_start_timer(S.timer); 43 44 while(!S.quit) { 45 ALLEGRO_EVENT ev; 46 47 al_wait_for_event(S.events, &ev); 48 49- ALLEGRO_TIMER * source = NULL; 50- 51 switch(ev.type) 52 { 53 case ALLEGRO_EVENT_DISPLAY_CLOSE: 54@@ -249,16 +247,12 @@ int main(int argc, char * argv[]) 55 } 56 break; 57 case ALLEGRO_EVENT_TIMER: 58- source = ev.timer.source; 59+ process_logic(&S); 60 61- if(source == S.gfx_timer && S.redraw) { 62- S.redraw = 0; 63+ if(S.redraw) { 64 render_graphics(&S); 65- } else if(source == S.logic_timer) { 66- process_logic(&S); 67- 68- S.redraw = 1; 69 } 70+ 71 break; 72 } 73 } 74@@ -498,8 +492,7 @@ static int deinitialize(GAME_STATE * S) 75 ALLEGRO_BITMAP ** sprite = NULL; 76 ALLEGRO_DISPLAY ** display = &S->display; 77 ALLEGRO_EVENT_QUEUE ** events = &S->events; 78- ALLEGRO_TIMER ** gfx_timer = &S->gfx_timer; 79- ALLEGRO_TIMER ** logic_timer = &S->logic_timer; 80+ ALLEGRO_TIMER ** timer = &S->timer; 81 GAME_BOARD ** game_board = &S->game_board; 82 LINKED_LIST ** pieces = &S->pieces; 83 84@@ -520,14 +513,9 @@ static int deinitialize(GAME_STATE * S) 85 *events = NULL; 86 } 87 88- if(*gfx_timer) { 89- al_destroy_timer(*gfx_timer); 90- *gfx_timer = NULL; 91- } 92- 93- if(*logic_timer) { 94- al_destroy_timer(*logic_timer); 95- *logic_timer = NULL; 96+ if(*timer) { 97+ al_destroy_timer(*timer); 98+ *timer = NULL; 99 } 100 101 if(*display) { 102@@ -697,8 +685,7 @@ static int initialize(GAME_STATE * S) 103 ALLEGRO_BITMAP ** sprite = NULL; 104 ALLEGRO_DISPLAY ** display = &S->display; 105 ALLEGRO_EVENT_QUEUE ** events = &S->events; 106- ALLEGRO_TIMER ** gfx_timer = &S->gfx_timer; 107- ALLEGRO_TIMER ** logic_timer = &S->logic_timer; 108+ ALLEGRO_TIMER ** timer = &S->timer; 109 110 if(!al_init()) { 111 return 1; 112@@ -714,18 +701,12 @@ static int initialize(GAME_STATE * S) 113 return 3; 114 } 115 116- *gfx_timer = al_create_timer(1.0/GFX_FPS); 117+ *timer = al_create_timer(1.0/GFX_FPS); 118 119- if(*gfx_timer == NULL) { 120+ if(*timer == NULL) { 121 return 4; 122 } 123 124- *logic_timer = al_create_timer(1.0/LOGIC_FPS); 125- 126- if(*logic_timer == NULL) { 127- return 5; 128- } 129- 130 *events = al_create_event_queue(); 131 132 if(*events == NULL) { 133@@ -734,8 +715,7 @@ static int initialize(GAME_STATE * S) 134 135 al_register_event_source(*events, al_get_display_event_source(*display)); 136 al_register_event_source(*events, al_get_keyboard_event_source()); 137- al_register_event_source(*events, al_get_timer_event_source(*gfx_timer)); 138- al_register_event_source(*events, al_get_timer_event_source(*logic_timer)); 139+ al_register_event_source(*events, al_get_timer_event_source(*timer)); 140 141 if(!al_init_primitives_addon()) { 142 return 7; 143@@ -920,6 +900,8 @@ static void print_frame_diagnostics(GAME_STATE * S) { 144 } 145 146 static int process_logic(GAME_STATE * S) { 147+ S->ticks++; 148+ 149 apply_input(S, VERTICAL); 150 apply_gravity(S); 151 apply_movements(S); 152@@ -940,10 +922,15 @@ static int process_logic(GAME_STATE * S) { 153 // Reset movement for next frame. 154 reset_movement(S); 155 156+ if((S->ticks / TICKS_PER_SECOND) % GFX_FPS == 0) { 157+ S->redraw = 1; 158+ } 159+ 160 return 1; 161 } 162 163 static void render_graphics(GAME_STATE * S) { 164+ S->redraw = 0; 165 al_set_target_bitmap(al_get_backbuffer(S->display)); 166 al_clear_to_color(white); 167 al_draw_bitmap(S->game_board->sprite, 0, 0, 0); 168-- 1692.13.0.311.g0339965

I suspect the bug isn't necessarily in the patch itself, but the patch just happened to uncover it...

amarillion
Member #940
January 2001
avatar

The game just froze while the green block was dropping? Or is that not it?

bamccaig
Member #7,536
July 2006
avatar

No, if you pay attention to the console behind you can see that the game is still running. The piece appeared to have mysteriously triggered the collision detection and stopped moving. I appear to have some pretty serious memory corruption bugs going on here. Now it's to a state where the program runs to the point of building up a full tower all the way to the top where the collision is detected at "spawn", but then the program crashes in malloc(). I thought for sure valgrind would find the issue, but it doesn't appear to. So I'm at a bit of a loss.

Onewing
Member #6,152
August 2005
avatar

I wrote up my own little fun piece on my blog.

I signed up on gamedev and gave you an up vote on your announcement. We need more here to do that I believe if it's going to have any weight.

------------
Solo-Games.org | My Tech Blog: The Digital Helm

Specter Phoenix
Member #1,425
July 2001
avatar

Unless they changed their system, the up vote only gives the user a few points toward their reputation. Without replies the post just gets pushed down the page by new ones.

Onewing
Member #6,152
August 2005
avatar

I wanted to reply and say I was attending, but didn't see the option too. Maybe I need more reputation before I can reply?

------------
Solo-Games.org | My Tech Blog: The Digital Helm

Specter Phoenix
Member #1,425
July 2001
avatar

Hmm...I thought the restriction for new members was just for creating announcements and wasn't aware it applied to replying to the announcement threads too. It is interesting, it appears I joined A.cc a month before I joined GD.Net, never paid attention til now.

Back to Allegro, are there any decent A5 tutorials to help me ease into Allegro programming again? I've not really touched Allegro since 4.3 or earlier. Last version I actually used to make anything serious with was all the way back in Allegro 3.9.* WIP.

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

If you want to get started with an OOBE, I suggest you use MinGW-W64 GCC and Allegro 5.2.2+ provided by mois. I also provide Allegro 4.4.3 if you're interested.

https://www.allegro.cc/forums/thread/616935

Then run through the tutorials for allegro on the wiki here :

http://liballeg.org/a5docs/trunk/getting_started.html

https://wiki.allegro.cc/index.php?title=Allegro_5_API_Tutorials

I replied to the gamedev thread by the way.

Specter Phoenix
Member #1,425
July 2001
avatar

I already have MinGW-W64 7.1 installed and your 5.2.2 binaries.
{"name":"611071","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/5\/95e59e02d3ee6929e77bc018e4880002.png","w":877,"h":749,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/5\/95e59e02d3ee6929e77bc018e4880002"}611071
Just wasn't sure if those tutorials were still valid or if aspects of the API had changed any since they were put on the wiki.

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Onewing
Member #6,152
August 2005
avatar

I still don't have an option to post a reply to the Game Dev thread. :(

I shared the TINS site on our developer (30-ish developers) slack channel at work. One guy is interested, but we'll see.

How else can we encourage more people to join? I didn't see us on the schedule here: https://itch.io/jams

------------
Solo-Games.org | My Tech Blog: The Digital Helm

amarillion
Member #940
January 2001
avatar

AFAICT The itch.io schedule is only for jams hosted on the itch.io platform. We did get added to the calendar here: http://www.indiegamejams.com/

Anyway, thanks to everybody who helped out with the promotion!

Specter Phoenix
Member #1,425
July 2001
avatar

Yeah.
https://itch.io/docs/creators/game-jams
Though, it seems to be a popular platform. I joined it a few months back when I noticed a lot of indies made use of it.

Neil Black
Member #7,867
October 2006
avatar

I convinced me to register for TINS. That counts as promotion right?

About a week now to figure out Allegro 5. It's fine, this is fine.

 1   2 


Go to: