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 - Ronsen

#1
I know it's still alpha but wants to let you know.
This is what I get from the Linux export. Version mismatch...
Quote
AGS: Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2014 others
ACI version 3.4.0.2

AGS: *** ENGINE STARTUP ***
AGS: Reading config file
AGS: Initializing allegro
AGS: Setting up window
AGS: Initializing game data
AGS: Game data file: ***removed***.ags

AGS: Initializing TTF renderer
AGS: Initializing mouse
AGS: Checking memory
ci_find_file: cannot change to directory: Compiled
AGS: Initializing audio vox
Audio vox found and initialized.
AGS: Initializing keyboard
AGS: Install timer
Checking sound inits.
AGS: Initialize sound drivers
ALSA lib rawmidi_hw.c:233:(snd_rawmidi_hw_open) open /dev/snd/midiC0D0 failed: Datei oder Verzeichnis nicht gefunden
AGS: Install exit handler
AGS: Initialize path finder library
AGS: Load game data
AGS: Game data version: 46
AGS: Requested engine version: 3.4.0.3
This game requires a newer version of AGS (3.4.0.3). It may not run correctly.AGS: Game GUI version: 118
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
Shutting down Allegro due to signal #6
Aborted (core dumped)
#2
Hi there,

on my attempt to build some of the winsetup functions ingame I run into some questions/trouble ;)
Is there a way to get the native desktop resolution and supported resolution modes? I had a look at:

System.ViewportWidth/Height and System.ScreenWidth/Height both gave me my game resolution which i set under "General Settings -> Resolution" (in my case 320x200).

Which is good to write
Code: ags

[misc]
game_width=320
game_height=200

but I need also
Code: ags

[graphics]
screen_width=1280
screen_height=1024


...is there something?

Second question to understand the scaling..

My first PC has native desktop res. of 1280x1024 so the max filter scaling is recognised as x4 ( 1280x1024 / 320x200 = 4) is that right?
My second PC has a native desktop res. of 3840x2160 / 320x200 so max filter is x10 ....
So if I divide desktop.height/game.height and desktop.width/game.width each and take the lowest value as my max scale....that should work as well for custom game resolution right? Or is there a awesome crazy formular for the scaling?

I'm using the alpha AGS 3.4.0.3 ....
#3
Thank you a lot but i still have some trouble and it's btw already over my head. I get back to my level and put everything in 1 array...which I didn't want to do...but hey

Code: AGS

// new Setup module header
#define FILTER_MAX 17

struct GfxFilter {
  String name;
  String filter;
  String filter_scaling;
  String driver;
};

import GfxFilter filters[FILTER_MAX];


Code: AGS

  GfxFilter filters[FILTER_MAX];
  export filters;
....
  String driver = ini.Read("graphics", "driver", "DX5");
  String filter = ini.Read("graphics", "filter", "None");
  String filter_scaling = ini.Read("graphics", "filter_scaling", "1")
.....
   // DX5 gfxfilter (i know this could be better)
  filters[0].name = "StdScale";
  filters[0].filter = "StdScale";
  filters[0].filter_scaling = "1";
  filters[0].driver = "DX5";
 
  filters[1].name = "StdScale2";
  filters[1].filter = "StdScale";
  filters[1].filter_scaling = "2";
  filters[1].driver = "DX5";
  
  filters[2].name = "StdScale3";
  filters[2].filter = "StdScale";
  filters[2].filter_scaling = "3";
  filters[2].driver = "DX5";
  
  filters[3].name = "StdScale4";
  filters[3].filter = "StdScale";
  filters[3].filter_scaling = "4";
  filters[3].driver = "DX5";
  
  filters[4].name = "StdScaleMax";  
  filters[4].filter = "StdScale";
  filters[4].filter_scaling = "max";
  filters[4].driver = "DX5";
  
  filters[5].name = "Hq2x";  
  filters[5].filter = "Hq2x";
  filters[5].filter_scaling = "2";
  filters[5].driver = "DX5";
  
  filters[6].name = "Hq3x";
  filters[6].filter = "Hq3x";
  filters[6].filter_scaling = "3";
  filters[6].driver = "DX5";
  
  // D3D9 gfxfilters
  
  filters[7].name = "StdScale";
  filters[7].filter = "StdScale";
  filters[7].filter_scaling = "1";
  filters[7].driver = "D3D9";
  
  filters[8].name = "StdScale2";
  filters[8].filter = "StdScale";
  filters[8].filter_scaling = "2";
  filters[8].driver = "D3D9";
  
  filters[9].name = "StdScale3";
  filters[9].filter = "StdScale";
  filters[9].filter_scaling = "3";
  filters[9].driver = "D3D9";
  
  filters[10].name = "StdScale4";
  filters[10].driver = "D3D9";
  filters[10].filter = "StdScale";
  filters[10].filter_scaling = "4";
  
  filters[11].name = "StdScaleMax";
  filters[11].filter = "StdScale";
  filters[11].filter_scaling = "max";
  filters[11].driver = "D3D9";
  
  filters[12].name = "Linear";
  filters[12].filter = "Linear";
  filters[12].filter_scaling = "1";
  filters[12].driver = "D3D9";
  
  filters[13].name = "Linear2";
  filters[13].driver = "D3D9";
  filters[13].filter = "Linear";
  filters[13].filter_scaling = "2";
  
  filters[14].name = "Linear3";
  filters[14].filter = "Linear";
  filters[14].filter_scaling = "3";
  filters[14].driver = "D3D9";
  
  filters[15].name = "Linear4";
  filters[15].filter = "Linear";
  filters[15].filter_scaling = "4";
  filters[15].driver = "D3D9";
  
  filters[16].name = "LinearMax";
  filters[16].filter = "Linear";
  filters[16].filter_scaling = "max";
  filters[16].driver = "D3D9";

  lstFilter.Clear(); // Clear the Listbox first

  // Fill in the Listbox
  int i = 0;
  while (i < FILTER_MAX) {
    if (filters[i].driver == driver) {
      lstFilter.AddItem(filters[i].name);
    }
    i++;
  }
  // Search for the Array[ID] and select it in the ListBox
  int id = 0;
  while (id < FILTER_MAX) {
    if ((filters[id].filter == filter) && (filters[id].filter_scaling == filter_scaling) && (filters[id].driver == driver)) {
      lstFilter.SelectedIndex = id;
      lstFilter.TopItem = id;
      lstFilter.ScrollUp(); // Bring it to the center ;)      
    }
    id++;
  }

#4
Unfortunately I still have some trouble with this line:

Code: ags

 GfxFilter *array = FiltersDX5;


It says : Type mismatch: cannot convert 'Gfxfilter[]' to 'Gfxfilter*' :/

#5
Thank you very much monkey!!! Yes I know, I need to restart the engine to get all my changes to the acsetup.cfg file working.
But I have most of the winsetup settings now in a gui/module so I can change them easy In-Game under Linux. I already use the 3.4.0.3 build ;) It would be nice to know how it will change in the new build...just if you have time.
#6
Don't hurt me I try to figure out how pointers, strucs and arrays work and I think a need a little hand here. The search brings up a lot about pointer, arrays and stuff, but it made me even more confuse. I'm trying to fill in a simple ListBox, which actually works, but how do I make it to choose be
array FiltersDX5 or FiltersD3D9? Is a pointer here the right direction?

I'm trying to write my code as a module ;)

Code: ags

// *.ash 

// new Setup module header

#define LST_DX5_LIST 7

#define LST_D3D9_LIST 10


struct GfxFilter {
  String name;
  String filter;
  String filter_scaling;
};

GfxFilter FiltersDX5[LST_DX5_LIST];
GfxFilter FiltersD3D9[LST_D3D9_LIST];

export FiltersDX5; export FiltersD3D9;



Code: ags


// *.asc
// new module script
   .....
   ......
   
   String driver = ini.Read("graphics", "driver", "DX5");

  // how to set a pointer??? to FiltersDX5[] array
  int aVariableArraySize = LST_DX5_LIST;
  if (driver == "D3D9") {
    //change pointer??? to FiltersD3D9 array...
    aVariableArraySize = LST_D3D9_LIST;
  }
  
  int i = 0;
  while (i < aVariableArraySize) {
    lstFilter.AddItem(Filters???[i].name);
    i++;
  }
  
  ....
  .....
#7
Quote
http://www.thethoughtradar.com/AGS/FMODAGS/AGSfmodbin.zip
(source is available if anyone wants it)

calin, may I have a look at the source code... please :-)
#8
Thanks Khris, needless to say that it's working with the mouse usermode, ;)
now I just have to fiddle around with ssh's description module to get somthing like: Use NPC on Left Switch
#9
Hi,
I need some advice, please :-) I managed to create an NPC as follower, a portrait GUI of him is then shown in the right corner of the screen, now I want my NPC to use/handle like an item... example: if i click on the portrait GUI i can: Use NPC on Left Switch (now he walks over and interact with the left switch, while the player character is using the right switch to open the door).
But if I create the NPC as item, of course he pops up in my inventory, what I don't really want...
Is there a way to prevent my NPC-item to be shown in the inventory and (INVSHR) window? or is that totally stupid, trying to use my NPC like an item?

Thank you!     

#10
I know this post is quite old, but I just wanted to check it out, unfortunately the links are dead...
Btw, Is this plugin obsolete/not working anymore or was it just a little experiment to use/check a different sound engine?   
#12
Hi,
thanks for your response, actually I'm using SSH's "Description Module 1.06" to display text for objects, items, hotspot stuff and
I thought it might be good to display some text/hints for some of my buttons as well i.e. Inventory (Description.ButtonswithFont).

Well, I could set some blanks in the text field to move it "out of the way", like
Code: AGS
btnInv.Text = "            Inventory";

and then fiddle around with the x,y coordinates to get the description overlay back in the right place, but hell thats dirty ;)

I'm happy for any other suggestion ...
#13
Hello Everyone,

for some reasons I need to set some text to my GUI buttons, but this text should not be displayed on the button itself, it just should display the button-image.
I realized when the button-text is set to "New Button" or something that starts with "(IN*)" for example (INVSHR) or (INVENTORY),
that AGS is going to NOT display the text on the button. Is there some kind of internal ignore-check for some "keywords"? If yes, could I modify/extend this list?

Thank you ;)

me <- noob sry!
SMF spam blocked by CleanTalk