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.


Messages - Scavenger

Pages: [1] 2
1
AGI Development Tools / Re: QT AGIStudio update
« on: May 21, 2019, 09:51:10 PM »
Thank you so much for this! I've been having trouble compiling QT AGI Studio, and this is a godsend. I had to change a line in logedit.cpp because my netbook has a vertical resolution of 600 pixels and it was making the logic editor bug out because it's minimum text editor size was 600 pixels. But this works perfectly, and I'm stoked to make agi games on the go!

2
AGI Development Tools / Re: WinAGI Version 1.2.3 Is Available!!!
« on: March 20, 2019, 07:20:12 PM »
You're right, the Help file isn't helpful on that issue. Sorry about that.

But there is a way to use the keyboard to change the selected loop/cel. Use the TAB key to bring the view tree into focus (you can tell it has the focus because the selected item will be highlighted in blue instead of gray). Then you can use up/down and left/right to move through the loops and cels.

Would it be possible to add dedicated keys for going back and forth between frames? When I animate, I need to be able to quickly flip the frames and draw without going through menus. I also have a macro keyboard I use, so I can bind shortcuts to keys on it when my laptop is in tablet mode (and the regular keyboard isn't available). Adding it would make it significantly quicker and more comfortable to animate views.

3
AGI Development Tools / Re: WinAGI Version 1.2.3 Is Available!!!
« on: March 20, 2019, 10:39:49 AM »
Hey, I'm loving this new version of WinAGI, and I'm really looking forward to using it to make an AGI game!

Are there any keyboard shortcuts for the View editor, though? For going back and forth between frames in a loop and so on, the help file doesn't seem to have them and I can't find any.

4
Why did you mimick me, Kawa? All I wanted to do was share something I thought y'all might like that I worked hard on. :\

5
I still can't figure out how to make a new interface for SCI1.1, so I made an AGS game instead in a month:
http://www.adventuregamestudio.co.uk/site/games/game/2170/ !

I'm really quite proud of it.

6
I've been trying to do the same thing - right now I can't even get a button to work, though I can draw one to the screen. It's just not clickable yet. The template code for drawing the interface has a lot of assembly in it, too, so I can't make head nor tail of how you're supposed to do it.

I'm sure if it was hacked at for a while we could figure out how to seperate out all the mouse handling and interface handling code so we could make our own, but there just isn't enough documentation on it to make it happen yet. I'll continue trying to figure it out.

7
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 20, 2017, 01:44:35 AM »

Is there a reason you have this in a doit method of a Code instance, instead of just a procedure?

Okay, I'm just following what the template code is doing, because I'm certain that the template code works, so I don't want to step outside of what it's telling me to do. The statusline code I got it from does it that way, so that's what I did. Is it wrong?

That's because it was decompiled from the binary. It was a ton of work just to get it into that state.

That's understandable, I've been going through the code and putting in variable names and comments when I'm sure I know what the code does. Once I'm confident with it I'll probably go back and rename/comment all the code in the template so it's easier for other people. I just need to learn it first.

What do you mean by "Running this code in Main.sc"? It matters from what code you're calling it, not what script file it's in.

Well, I originally had it in main.sc's doit method, directly below (statusLineCode doit:). There was nothing there. But putting it in Rm110's doit method DOES work for some reason. I'm not sure why.

It was:
Code: (Main.sc Line 706) [Select]
(method (doit)
(if (GameIsRestarting)
(if (IsOneOf gRoomNumber TITLEROOM_SCRIPT)
(HideStatus)
else
(statusLineCode doit:)
(testDrawingCode doit:) ;the added code
)
(= gColorDepth (Graph grGET_COLOURS))
)
(super doit: &rest)
)

But I had to put it in Rm110 like:

Code: [Select]
(method (doit)
(testDrawingCode doit:)
)

I'll be honest, I'm not sure why it didn't work the first time.

8
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 19, 2017, 01:39:54 PM »
Alright! I worked out what was going wrong, I was missing "&tmp" in the variable declaration in the method header.

By running:

Code: [Select]
(instance testDrawingCode of Code
(properties)

(method (doit &tmp oldPort)
(= oldPort (GetPort))
(SetPort -1)
(Graph grFILL_BOX 0 0 40 40 VISUAL 5 -1 -1)
(Graph grUPDATE_BOX 0 0 40 40 VISUAL)
(SetPort oldPort)
)
)

in the room's doit method I managed to draw a solid colour square without destroying the engine! I've been looking through the drawing code for the rest of it to see how to add buttons and stuff, something that makes it more difficult is that most of the variables are labelled tempX and there's very little comments telling me whats happening. I'll keep slogging through it. Running this code in Main.sc doesn't work, but I expect it's just drawing it behind the room's background instead, and if the room was differently shaped to have a hole in it it would work. Progress!

9
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 18, 2017, 10:28:16 AM »
I am trying to make a new window, just to experiment and learn how this works - I don't just want to edit the iconbar but make an entirely new interface. The one I had in AGS looked like this:


So I wanna know how to replicate it in SCI. I'm... more of an artist than a game developer really.

I tried using NewWindow, here is my code:

Code: [Select]
(method (doit oldPort hWnd)
(= oldPort (GetPort))
(= hWnd (NewWindow
        20 20 40 40
        "Test Window"
        nwNODRAW
        nwON_TOP
        clBLACK
        clWHITE
))
(SetPort hWnd)
(Graph grFILL_BOX 20 20 40 40 VISUAL 5 -1 -1)
(Graph grUPDATE_BOX 20 20 40 40 VISUAL)
(SetPort oldPort)
)

And here is the, quite honestly baffling, output:



Today I learnt that SCI1.1 has the full 0-256 range for ASCII, which makes translation a lot easier! But what went wrong here?

10
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 18, 2017, 01:45:16 AM »
Honestly I think that's a little uncalled for. I'm just here trying to learn an engine with very little documentation or up to date tutorials (half the tutorials on SCI1.1 use a syntax that doesn't compile in what I'm using, it's very confusing), and I'm gonna have to ask a lot of questions you may find silly because you already know the answers to it.

The last time I used SCI0, I asked if the text parser box was done in-engine or in-script, and the consensus was it was hard coded into the engine and you needed to do a lot of workarounds to make it be something else. I am not aware of many games that used a nonstandard interface in SCI1.1 (even the SCI1.1 version of LSL6 used the iconbar and not the interface from the high res version), so I was concerned that the iconbar was the same deal as in SCI0. This engine isn't SCUMM, it's its own thing, and I've worked with a lot of engines with hard coded elements (such as OHRRPGCE, which has a pretty non-customisable battle engine).

I'm just trying to learn this engine. :\ It's difficult, and I don't know enough about it at the moment to know how to ask the "right" questions. I'd appreciate it if you helped me and didn't snipe at me?

Anyway, I've been having a look at it, and it looks like, though I can't be sure, that you use GetPort on the current viewport and SetPort to draw a new window overlay, though I'm not sure exactly how it works. Looking at the status line code, it seems pretty straightforward in that you can draw directly to the screen using the Graph function, but I'm not entirely sure how you draw a button yet. There's no documentation on Get/SetPort that I can find, either. How does that work?

Edit: Ok, I've messed around a little to try and get drawing shit done, and added this to the room instance, but when it's there I can't click on anything and it gives me the error "35979.fon not found" and hangs whenever an interaction is supposed to take place.

Code: [Select]
(method (doit oldPort)
(= oldPort (GetPort))
(SetPort -1)
(Graph grFILL_BOX 20 20 40 40 VISUAL 5 -1 -1)
(Graph grUPDATE_BOX 20 20 40 40 VISUAL)
(SetPort oldPort)
Pretty sure I'm doing something wrong, but I don't know what.

11
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 17, 2017, 12:33:34 PM »
Thank you, I'll read these over and see how to create my own interface from it!

12
SCI Syntax Help / Re: So how customisable is the interface in SCI1.1?
« on: February 17, 2017, 10:09:52 AM »
Can you help to point me to where the mouse handler is, and the iconbar is drawn? That's the main thing I'm having trouble with. Once I find out where everything is, I can probably program it myself, but there are like, 30 scripts and I have no idea where everything is.

13
SCI Syntax Help / So how customisable is the interface in SCI1.1?
« on: February 17, 2017, 09:47:52 AM »
I've been going through SCI, trying to get the hang of each bit of it, but there's something that's bothering me about it that I need to clear up: Is the standard Sierra interface hard coded, or in a script somewhere? I've been looking and looking for it, but I haven't yet found where the interface is defined. I know the top bar is drawn by the script, and you can change it, but I'm not sure about the iconbar, or whether you can create a different interface style that doesn't have the iconbar/right click cycle. Maybe something like Left click interact, right click look? A verb coin? How hard coded is the interface in SCI1.1, and if it isn't, where is the script that controls these things?

14
SCI Syntax Help / Re: Can someone explain how to do blocking actions?
« on: February 12, 2017, 05:01:44 AM »
Okay, I think I've worked it out, I did a really simple interaction to make the ego walk to a place and back again:

Code: [Select]
(instance guytalkScript of Script
(properties)

(method (changeState newState)
(= state newState)
(switch state
(0
(gGame handsOff:)
(gEgo setMotion: MoveTo 282 91 guytalkScript)
)
(1
(gEgo setMotion: MoveTo 174 174 guytalkScript)
)
(2
(gGame handsOn:)
)
)
)
)

And it seems to work! The game stops, the ego walks, the game waits til he gets there and he walks back again. This is how you're supposed to use the changestate method, right? I'm not doing this entirely wrong?

15
SCI Syntax Help / Re: Can someone explain how to do blocking actions?
« on: February 11, 2017, 09:10:05 PM »
Thanks! I'll try it out and see if I can't make something happen!

Pages: [1] 2

SMF 2.0.14 | SMF © 2017, Simple Machines
Simple Audio Video Embedder

Page created in 0.093 seconds with 21 queries.