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

Messages - eri0o

#2761
Both window and fullscreen, but the above code does work. I will actually improve it to pause and proceed with the music later.
#2762
Question. I may go to NYC in May. Can someone suggest me a good hotel? My definition of good is a nice bed for me and my girlfriend, has a bathroom in the room, has wifi and either has breakfast or is near a bakery or coffee shop that offers breakfast.

I am going for leisure, will visit museums, and other stuff.
#2763
Being a user of AGS, have to say that switching to ScummVM and having the portability it offers, along the possibilities of SDL (like joystick support or building for JS with LLVM Emscripten) is something that would be huge - note: I don't really know if any of this is true. I also really would like to be able to package the game for platforms so that the customer buying the game would never need to know any of these things.
#2764
Just linking a website that has been very useful to me:

http://www.pentacom.jp/pentacom/bitfontmaker2/gallery/?page=1&order=popular
#2765
About Agent Based Modeling, there is a project some people are experimenting with in the company I work, called JaCaMo, the website has a nice short description of the concepts that may or may not be useful.
#2766
In the party example you have a place (rooms, gardens,...), agents (the persons), properties of the agents (in this you probably have to define some relations between agents to generate motives), a crime (the easier would be murder, and then try to come up with other crimes). This kind of simulation model you proposed looks to be somewhat Agent Based Model, so that's why I refered to agents there. Make something simple first (here is an example of simple thing using agents, The Incredible Car Salesman , HTML5 made in Construct).

The game elements are not really clear yet though - would this happen before in black screen, and through clues and talking to people you would see flashbacks from what happened? If you are going for Agents, remember you will have to make some modifications to ensure: (1) a crime does happen, (2) this crime is solvable. On the game elements part, I am throwing some references below for stuff I remembered by reading the party description and could be useful. Also a crazy idea here would be to inverse the play in the system: You must commit a murder and then watch the detective agent solve it or not.


One of Us - PC Jam Game

Is a game where you walk in a village where someone is the wolf, who kills, every end of a day, after getting clues, you choose someone you believe to be the wolf, to be hanged. If the right person is chosen, the game ends, if not, the wolf kills someone, and you can again explore the village.


221 B Street - Board Game

This game is known as Scotland Yard here in South America, (the European Scotland Yard here is Interpol). You walk on the board going to different places collecting clues, clues are predefined from a book of a lot of cases, every play is a different case. With clues you can put together stuff like murder weapon, the name of the person who committed the crime, and other things. The game has interesting elements idea on how to gammify a case solving - like how you must race against other player to the Scotland Yard once you know the answers.

I really like board games for inspiration because they are usually game systems in the simplest form you can just look and experiment. If there is any local bar with boardgames, go there.


And Then There Were None - Book

This book has a cool story and is written by Agatha Christie. Her other books, featuring the detective Hercule Poirot have a nice catch: once Hercule states he knows who did it, you can stop reading, analyse the clues you have been giving and try to process then in your head. You can then proceed reading and see if you got things right. I like the setting of those books and the era they take place provide lots of Public Domain assets to stea... use.
#2767
Two things: as to all open source projects, it seems we need a leader, benevolent dictator.

Second thing: for me AGS is the combination of adventure features with being good with pixels. If the being good with pixels is important for everyone, then it appears something like SDL makes more sense - no penalty from the lots of bitmaps. If the pixels are not that important, then Allegro 5 seems like the proper backend, but in this case, for me, there other engines that appear to work better.

The greatest strength for me in AGS is the editor that is very good and the scripting language that makes no distinction between things that happen synchronously or asynchronously, so the code looks like a sequence of thoughts.
#2768
Question. Going from Allegro 4.4 to 5 involves any meddling in the Editor? The reason I ask is because building the Editor is a LOT harder (configuring MSVS) to me than the Engine (typing "make [enter]"). My stupid idea would be building against Allegro 5 and fix each error until it builds, which is something very stupid, but makes the task brainless - assuming the calls to Allegro are mostly wrapped in the code so there aren't that many, IDNK if this is true though...
#2769
Beginners' Technical Questions / Re: Error -18
Mon 01/01/2018 02:55:42
When possible please state how you solved your problem.:sad:
#2770
I am so sorry about the documentation thing,  could glue scripts, but they would probably run on Linux - low motivation for documentation. The terrible organization is really the biggest problem because it generates work that is wasted. Today I got an answer from Nick on Twitter saying he will DM me the stuff for building. I have to say I just wanted to use the tool instead of working on it.

AGA is right though that we could really use some tool to help with organization.
#2771
To trigger long click, you have to hold your finger and wait until the device vibrates, and then the longclick is processed. The idea would be that once the screen is touched, the mouse button is already considered down.:/ Also as is, to remove the finger, you have to click with the finger again. CW don't worry. (I really don't like how written text makes me sound like I am ungrateful...)
#2772
You read right Snarky, if I understood, touch needs to be a click but still keep the state of the left mouse button pressed while the finger is pressed on the screen. At least this is how I understand the mouse works in AGS, it emits the mouse click event on click and not on release.
#2773
Sent him a tweet! :D
#2774
AGS Games in Production / Re: Future Flashback
Sat 30/12/2017 18:32:19
Thanks Lasca!



We are working hard to make this a good game! I hope in 2018 I can provide more updates here in the thread! (nod)
#2775
There are some links that goes to Teamcity bigbluecup, it looks like it is/was a pipeline part to build binaries. Is this still online? Are the scripts for build there public in any place?
#2776
Just a small update, the android config file is named android.cfg, it's options are actually a little different (it's below, in spoiler tag), and I couldn't trace from source exactly where it should be place, but I think it's the /data/data/packagename folder.

android.cfg
Spoiler
Code: ags

[misc]
config_enabled = 1
rotation = 0
translation = default
[controls]
mouse_method = 0
mouse_longclick = 1
[compatibility]
clear_cache_on_room_change = 0
[sound]
samplerate = 44100
enabled = 1
threaded = 1
cache_size = 10
[midi]
enabled = 1
preload_patches = 0
[video]
framedrop = 0
[graphics]
renderer = 0
smoothing = 1
scaling = 1
super_sampling = 0
smooth_sprites = 0
[debug]
show_fps = 0
logging = 0
[close]

Edit: in android studio, placing the android.cfg file in the assets folder places the config file in the correct place. Unfortunately, it's useless for my case. In the ags project, the file Android/library/src/com/bigbluecup/android/AgsEngine.java deals with the touch to mouse click. I will need to modify the method dispatchTouchEvent so that touch is a click and releasing touch is a mouse release, and edit Android/library/src/com/bigbluecup/android/EngineGlue.java to provide a method for both click and release - now there is only a method for click. I will not do this soon, since I have another game to make and I still seem to get a weird missing allegro.h when building... Maybe in 2018. :P
#2777
Thank you Crimson Wizard! I will take a look tonight - I will test how to use acsetup.cfg in Android because I really don't know, maybe it will be easier if I just change the engine source and recompile :/
#2778
Uhm... Thanks Crimson Wizard! I will try later to see if this solves my currently bug! I was able to build an APK here, but for some reason DragAndDrop from the DragAndDrop module isn't working . :/
#2779
How does one build this?

I followed the guide here: https://github.com/adventuregamestudio/ags/tree/master/Android

But I get the error:

In file included from jni/../jni/../../../Engine/ac/audiochannel.cpp:16:
In file included from jni/../jni/../../../Common/ac/roomstruct.h:25:
jni/../jni/../../../Common/util/wgt2allg.h:29:10: fatal error: 'allegro.h' file not found
#include "allegro.h"
         ^~~~~~~~~~~
2 warnings and 1 error generated.
make: *** [obj/local/armeabi/objs/agsengine/ac/audiochannel.o] Error 1


full output:
Spoiler
Code: ags
 ~/Android/Sdk/ndk-bundle/ndk-build 
Android NDK: Found platform level in jni/../project.properties. Setting APP_PLATFORM to android-16.    
Android NDK: WARNING: APP_PLATFORM android-16 is higher than android:minSdkVersion 9 in jni/../AndroidManifest.xml. NDK binaries will *not* be comptible with devices older than android-16. See https://android.googlesource.com/platform/ndk/+/master/docs/user/common_problems.md for more information.    
/home/erico/Android/Sdk/ndk-bundle/build/core/setup-app.mk:81: Android NDK: Application targets deprecated ABI(s): armeabi mips    
/home/erico/Android/Sdk/ndk-bundle/build/core/setup-app.mk:82: Android NDK: Support for these ABIs will be removed in a future NDK release.    
Android NDK: WARNING:jni/../jni/Android.mk:agsengine: non-system libraries in linker flags: -lalleg -lfreetype -lvorbisidec -ltheora -logg -laldmb -ldumb    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agslua: non-system libraries in linker flags: -llua    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agsengine: non-system libraries in linker flags: -lalleg -lfreetype -lvorbisidec -ltheora -logg -laldmb -ldumb    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agslua: non-system libraries in linker flags: -llua    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agsengine: non-system libraries in linker flags: -lalleg -lfreetype -lvorbisidec -ltheora -logg -laldmb -ldumb    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agslua: non-system libraries in linker flags: -llua    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agsengine: non-system libraries in linker flags: -lalleg -lfreetype -lvorbisidec -ltheora -logg -laldmb -ldumb    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
Android NDK: WARNING:jni/../jni/Android.mk:agslua: non-system libraries in linker flags: -llua    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
[armeabi] Compile++ arm  : agsengine <= audiochannel.cpp
warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option]
warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option]
In file included from jni/../jni/../../../Engine/ac/audiochannel.cpp:16:
In file included from jni/../jni/../../../Common/ac/roomstruct.h:25:
jni/../jni/../../../Common/util/wgt2allg.h:29:10: fatal error: 'allegro.h' file not found
#include "allegro.h"
         ^~~~~~~~~~~
2 warnings and 1 error generated.
make: *** [obj/local/armeabi/objs/agsengine/ac/audiochannel.o] Error 1
[close]
#2780
(I switched to use data folder instead of obb folder because of an API change in API23)

Edit: it appears a PERMISSION_DENIED is caused by the OBB indicating it's owned by a different package. I will try to generate it again when I am at home and see what happens.

I also remember the key string being shown as @0 instead of null by Android Studio, so two things to check!

Edit2: Ok, the error was BOTH. My command for the jobb tool was the following now:
   ~/Android/Sdk/tools/bin/jobb -d ./obb/ -o main.3.com.mythsuntold.dungeonhands.obb -pn com.mythsuntold.dungeonhands -pv 3

Also, I directly set the key to null (line 186 of MainActivity.java):

Code: ags
...
        if (!storageManager.isObbMounted(mainFile.getAbsolutePath())) {
            if (mainFile.exists()) {
                if (storageManager.mountObb(mainFile.getAbsolutePath(), null, expansionListener))  // ..., null was key, ...
...



Now I am hiting the following error:

Code: ags

12-26 19:02:53.275 4810-4810/com.mythsuntold.dungeonhands I/InstantRun: starting instant run server: is main process
12-26 19:02:53.303 4810-4810/com.mythsuntold.dungeonhands D/STORAGE_MNT: SUCCESSFULLY QUEUED
12-26 19:02:53.348 4810-4829/com.mythsuntold.dungeonhands I/OpenGLRenderer: Initialized EGL, version 1.4
12-26 19:02:53.348 4810-4829/com.mythsuntold.dungeonhands D/OpenGLRenderer: Swap behavior 1
12-26 19:02:53.349 4810-4829/com.mythsuntold.dungeonhands W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
12-26 19:02:53.349 4810-4829/com.mythsuntold.dungeonhands D/OpenGLRenderer: Swap behavior 0
12-26 19:02:53.357 4810-4829/com.mythsuntold.dungeonhands D/EGL_emulation: eglCreateContext: 0x9c63a680: maj 2 min 0 rcv 2
12-26 19:02:53.366 4810-4810/com.mythsuntold.dungeonhands D/PATH =: /storage/emulated/0/Android/data/com.mythsuntold.dungeonhands/files/main.3.com.mythsuntold.dungeonhands.obb
12-26 19:02:53.366 4810-4810/com.mythsuntold.dungeonhands D/STATE =: 1
12-26 19:02:53.367 4810-4829/com.mythsuntold.dungeonhands D/EGL_emulation: eglMakeCurrent: 0x9c63a680: ver 2 0 (tinfo 0xa617d330)
12-26 19:02:53.369 4810-4810/com.mythsuntold.dungeonhands D/STORAGE: -->MOUNTED
12-26 19:02:53.377 4810-4829/com.mythsuntold.dungeonhands D/EGL_emulation: eglMakeCurrent: 0x9c63a680: ver 2 0 (tinfo 0xa617d330)
12-26 19:02:53.429 4810-4810/com.mythsuntold.dungeonhands D/AndroidRuntime: Shutting down VM
12-26 19:02:53.432 4810-4810/com.mythsuntold.dungeonhands E/AndroidRuntime: FATAL EXCEPTION: main
                                                                            Process: com.mythsuntold.dungeonhands, PID: 4810
                                                                            java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.mythsuntold.dungeonhands-1/base.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_dependencies_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_0_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_1_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_2_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_3_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_4_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_5_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_6_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_7_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_8_apk.apk", zip file "/data/app/com.mythsuntold.dungeonhands-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.mythsuntold.dungeonhands-1/lib/x86, /system/lib, /vendor/lib]]] couldn't find "libagsengine.so"
                                                                                at java.lang.Runtime.loadLibrary0(Runtime.java:972)
                                                                                at java.lang.System.loadLibrary(System.java:1530)
                                                                                at com.bigbluecup.android.EngineGlue.<init>(EngineGlue.java:67)
                                                                                at com.bigbluecup.android.AgsEngine.onCreate(AgsEngine.java:182)
                                                                                at android.app.Activity.performCreate(Activity.java:6662)
                                                                                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
                                                                                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
                                                                                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
                                                                                at android.app.ActivityThread.-wrap12(ActivityThread.java)
                                                                                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
                                                                                at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                at android.os.Looper.loop(Looper.java:154)
                                                                                at android.app.ActivityThread.main(ActivityThread.java:6077)
                                                                                at java.lang.reflect.Method.invoke(Native Method)
                                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
                                                                                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
12-26 19:02:59.279 4810-4819/com.mythsuntold.dungeonhands E/PowerManager: WakeLock finalized while still held: fullwakelock
12-26 19:02:59.573 4810-4819/com.mythsuntold.dungeonhands E/System: Uncaught exception thrown by finalizer
12-26 19:02:59.574 4810-4819/com.mythsuntold.dungeonhands E/System: java.lang.IllegalStateException: Binder has been finalized!
                                                                        at android.os.BinderProxy.transactNative(Native Method)
                                                                        at android.os.BinderProxy.transact(Binder.java:615)
                                                                        at android.os.IPowerManager$Stub$Proxy.releaseWakeLock(IPowerManager.java:415)
                                                                        at android.os.PowerManager$WakeLock.finalize(PowerManager.java:1164)
                                                                        at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:222)
                                                                        at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:209)
                                                                        at java.lang.Thread.run(Thread.java:761)



updated my repository here.

And just for proof, this is an image where I open the native-libs.jar and find the 'missing' libagsengine.so inside of it: https://i.imgur.com/j1Hd1PM.png

no native libs in output of the Native Libs Monitor . :(


Edit3: IT'S WORKING!

https://github.com/ericoporto/mythsuntold_dungeonhands V.0.1.0

I had to add the code below inside     agsEngineLibrary.gradle under android:

Code: ags

    sourceSets {
        main {
            // let gradle pack the shared library into apk
            jniLibs.srcDirs = ['jniLibs']
        }
    }


I built using:
Android Studio 3.0.1
Build #AI-171.4443003, built on November 9, 2017
JRE: 1.8.0_152-release-915-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.10.0-35-generic (Ubuntu 16.04)

DOWNLOAD HERE THE APK SO FAR



I have an error saying I have to do something about midi digitpatch whatever, but audio is working! Also I need to find out why DragAndDrop doesn't work!

(I know I need to update the art one day too...)
SMF spam blocked by CleanTalk