|
This thread is locked; no one can reply to it. |
1
2
|
TINS promotion |
amarillion
Member #940
January 2001
|
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
|
amarillion said: 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
|
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
|
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
|
Specter Phoenix said: I'll be interested in seeing if this pans out Pans out? What do you mean? -- |
bamccaig
Member #7,536
July 2006
|
Your posts[1] have inspired me to hack away at a game for the first time in years pretty much. Thank you. -- acc.js | al4anim - Allegro 4 Animation library | Allegro 5 VS/NuGet Guide | Allegro.cc Mockup | Allegro.cc <code> Tag | Allegro 4 Timer Example (w/ Semaphores) | Allegro 5 "Winpkg" (MSVC readme) | Bambot | Blog | C++ STL Container Flowchart | Castopulence Software | Check Return Values | Derail? | Is This A Discussion? Flow Chart | Filesystem Hierarchy Standard | Clean Code Talks - Global State and Singletons | How To Use Header Files | GNU/Linux (Debian, Fedora, Gentoo) | rot (rot13, rot47, rotN) | Streaming |
amarillion
Member #940
January 2001
|
Sure How about the follow up on my blog Does that inspire you as well?
-- |
Specter Phoenix
Member #1,425
July 2001
|
amarillion said: Pans out? What do you mean? To see if you get a lot of non-A.cc people joining.
|
amarillion
Member #940
January 2001
|
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
|
amarillion said: Sure How about the follow up on my blog Does that inspire you as well? It did. -- acc.js | al4anim - Allegro 4 Animation library | Allegro 5 VS/NuGet Guide | Allegro.cc Mockup | Allegro.cc <code> Tag | Allegro 4 Timer Example (w/ Semaphores) | Allegro 5 "Winpkg" (MSVC readme) | Bambot | Blog | C++ STL Container Flowchart | Castopulence Software | Check Return Values | Derail? | Is This A Discussion? Flow Chart | Filesystem Hierarchy Standard | Clean Code Talks - Global State and Singletons | How To Use Header Files | GNU/Linux (Debian, Fedora, Gentoo) | rot (rot13, rot47, rotN) | Streaming |
Specter Phoenix
Member #1,425
July 2001
|
I joined, but with my son's health there is no guarantee I'll get anything done.
|
bamccaig
Member #7,536
July 2006
|
Still motivated. This is an amusing bug. Here's what the diff looks like: 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... -- acc.js | al4anim - Allegro 4 Animation library | Allegro 5 VS/NuGet Guide | Allegro.cc Mockup | Allegro.cc <code> Tag | Allegro 4 Timer Example (w/ Semaphores) | Allegro 5 "Winpkg" (MSVC readme) | Bambot | Blog | C++ STL Container Flowchart | Castopulence Software | Check Return Values | Derail? | Is This A Discussion? Flow Chart | Filesystem Hierarchy Standard | Clean Code Talks - Global State and Singletons | How To Use Header Files | GNU/Linux (Debian, Fedora, Gentoo) | rot (rot13, rot47, rotN) | Streaming |
amarillion
Member #940
January 2001
|
The game just froze while the green block was dropping? Or is that not it? -- |
bamccaig
Member #7,536
July 2006
|
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. -- acc.js | al4anim - Allegro 4 Animation library | Allegro 5 VS/NuGet Guide | Allegro.cc Mockup | Allegro.cc <code> Tag | Allegro 4 Timer Example (w/ Semaphores) | Allegro 5 "Winpkg" (MSVC readme) | Bambot | Blog | C++ STL Container Flowchart | Castopulence Software | Check Return Values | Derail? | Is This A Discussion? Flow Chart | Filesystem Hierarchy Standard | Clean Code Talks - Global State and Singletons | How To Use Header Files | GNU/Linux (Debian, Fedora, Gentoo) | rot (rot13, rot47, rotN) | Streaming |
Onewing
Member #6,152
August 2005
|
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. ------------ |
Specter Phoenix
Member #1,425
July 2001
|
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
|
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? ------------ |
Specter Phoenix
Member #1,425
July 2001
|
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
|
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. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Specter Phoenix
Member #1,425
July 2001
|
I already have MinGW-W64 7.1 installed and your 5.2.2 binaries.
|
Edgar Reynaldo
Major Reynaldo
May 2007
|
A bunch of wiki pages got wiped out. Tomasu is looking into it. As to using my binaries, make sure you're using the same version of MinGW as they were compiled with, like the one linked in that thread I linked. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Onewing
Member #6,152
August 2005
|
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 ------------ |
amarillion
Member #940
January 2001
|
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
|
Yeah.
|
Neil Black
Member #7,867
October 2006
|
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
|