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.


Topics - Cloudee1

Pages: 1 2 [3] 4 5 ... 11
31
So I am going through the point and click template after getting the newest sciAudio set up. I figured this would be as good as time as any to try and get some things cleaned up a little bit, and like usual I start in the main script.

I ran across this procedure which really doesn't seem to make much sense to me. Unless I am mistaken, it is just another call to addToPic... Does anyone see any real reason that it should stick around in there. What are the difference between using addToPic and this procedure which itself uses addToPic?

Code: [Select]
(procedure public (AddViewToPic pView)
(var hView)
(if(pView)
= hView (View:new())
(send hView:
  view(send pView:view)
loop(send pView:loop)
cel(send pView:cel)
priority(send pView:priority)
posn( (send pView:x) (send pView:y) )
addToPic()
)
(send pView:
posn( (send pView:x) (+ 1000 (send pView:y)) )
)
)
)

32
Forum Support and Suggestions / Fan Games... Completed vs Competition
« on: March 01, 2015, 06:03:12 PM »
So I keep flipping back and forth on this one so I will put it out there and see if there is a general consensus...

Competition entries, should they be displayed in the completed games listings as technically they are, or should they be kept separate as they are now?

And if they are included in the completed games listing, should we still have Competition as a sorting option in the games page or not?

33
SCI Community News / Sierra Games Page
« on: January 15, 2015, 10:01:01 AM »
Well if nothing else, the Sierra game listing's are at least back to where they were before the Site redesign started.

Granted they may not be perfect but they are at least back up and running like they should be.

34
SCI Community News / Profile page updates
« on: January 05, 2015, 01:49:43 PM »
With so much still left to do, I have now managed to mark a couple of things off of my to do list.

The profile pages, now show the users trophies, friends, and games that they have rated.

Comments or suggestions are always welcome.

Enjoy!

35
The Games and other Sierra Adventure stuff / Star Pilot - Bigger Fish
« on: January 04, 2015, 08:37:06 PM »
I have been carrying this one around in the list of games waiting for approval for years. The intro would play and the first room would launch, but it would never progress beyond that point. I finally got tired of it sitting in there so I popped it open in agi studio and did a bit of editing. Now after a few seconds, the game continues on.

While I like what I saw, this is one of those games that I am sorry never got finished. What is actually playable is very little and there seems to be one room that you get stuck in... but finally I have made it available so see what you think of it.

Star Pilot: Bigger Fish

36
For some reason or another I took a peak at this one today. I found out pretty quickly that there was a bug that pretty much brought the game to a screeching halt.

When entering the dean's office, program control moves the ego to the front of the desk. Talking to the dean then triggers him to move between the ego and the door. When the ego then attempts to exit the office, the dean is standing in the way and you still don't have control of the ego in order to move around him.

Fix: The dean now stops short of getting between the ego and the door. Allowing you to leave as you should when that time comes. Changed the version to v 1.01, your welcome.

You can find the game here.

38
SCI Community News / AddThis dropdown added to topics
« on: December 15, 2014, 11:30:43 AM »
So I was looking around a bit today following the most recent Russian Spambot flood, wondering why it is that we are being targeted. Amongst the things I looked at was the Google Page Rank and unfortunately it wasn't very high.


That is always a bit disappointing. But I have taken a couple of small steps in trying to help it out a bit. One thing was again submitting the site to dmoz.org, which I am pretty sure I have done before to no avail. Something else I did however which may help out our visibility the most, was add a social media linking widget to the topics.

Whenever you come across a discussion or topic that is interesting or you feel like sharing, please don't hesitate to share it on facebook, twitter, or any of the other social sites you are a member of. After all, it only works if you use it.

 8)

39
Since finishing Manic Mansion and before I dive head first back into Voodoo Girl I have been doing some tinkering around with a side project. I am trying come up with a name for microseconds that kind of sound Space Questish for use in a timer that is counting down cycles.

40
SCI Syntax Help / Removing border from EditPrint
« on: November 04, 2014, 07:02:30 PM »
Ok so I am attempting to place an edit print on a black screen. I have a changeState script which places the input prompt on the screen. As part of it, in one of the cases I have changed the background color to black and the text to white, then forced the input with

Code: [Select]
= gWndColor clWHITE
= gWndBack clBLACK

EditPrint(@inputStr 34 "" #at 75 136 #font 0)

So when it displays on screen, it seems to work out pretty well for what I want. The only issue is the border that is drawn around the input.



I can live with it as is, but it would be nice to get rid of the border if anyone knows how

41
The Games and other Sierra Adventure stuff / Manic Mansion
« on: November 01, 2014, 12:25:17 PM »
Download the game here.

Well, has anyone had a chance yet to fire this bad boy up or get stuck yet?

Kind of interested to hear some thoughts about it.

And for anyone who hasn't noticed, there is a new game up on the fan games page. Manic Mansion, created for the Halloween challenge and making use of SCIaudio wherever possible. The name of the game is a knock off of Lucasfilm games' Maniac Mansion and to anyone who gives it a try, it won't take you long to tell why.


42
SCI Syntax Help / Converting hex to value when attempting to examine heap
« on: October 02, 2014, 10:10:57 AM »
Assuming that Troflip's easy alt debugging is installed, pressing alt-m shows you two print statements, the first is the free heap chunk sizes and the other, a summary of memory values. To my understanding, the first print message displays the size of the available chunks of heap space in hexadecimal format.  So is the whole value the size, or is it the value preceding the @ symbol

For instance here is what I am currently looking at when I hit alt-m:

a@892a
dcc@8f08
31e@a92a
902@dfde

So converting that whole segment:
690474
231509768
52341034
151183326

or just the value preceding the @:
10
3532
798
2306

Which by the way, the next print statement tells me the Free Heap is 3530 Bytes, which I guess answers my question right there. The free heap statement, isn't telling me the total free heap but instead the largest chunk of free heap, which corresponds with just the values preceding the @ symbol in the first message as representing the hexadecimal value of the space available. I am assuming that the value that follows the @ symbol tells me where in the stack the free heap chunk lies, if I am saying that right. Anyone know how to get from the value to actually finding the issues?

So in conclusion what I am looking at is some fragmented heap memory since, their should really only be one large chunk at the end and some smaller ones up front. My largest is pretty much up front. Crap!

The next couple of rooms look slightly better since the largest chunk at least falls at the end, but there is still a big one up front.
Room2: 10   3704   798   5644
Room3: 10   3260   798   6020
Room4: "Out of heap space"

*Edit

Now the problem is definitely resulting from whatever is going on in my title screen changeState. When I comment it out and run the game, checking again.
Room1: 10 4 26 6606
Room2: 10 20 10124
Room3: 10 8 10020
Room4: 10 4 4472

I am unloading all of the views and the actual room script number, Not sure why it is getting stuck in the heap stack.

43
SCI Syntax Help / Attempting to create a Global sound via sciaudio
« on: September 16, 2014, 09:01:17 PM »
The goal is to create a sound that can be triggered in every room, without having to code it to every room. I tried several different ways and this one sticks out in my head that it should work. But I just can't seem to get it accomplished.

Most of this is occuring in the Main script. First off I added the bit to the top.
Code: [Select]
(use "sciaudio")
Then I created a global variable.
Code: [Select]
rattleSound = FALSE
Then in the doit method I added the bit about the playing the sound whenever the global variable was true, and of course make our variable false.
Code: [Select]
(if(rattleSound )
  = rattleSound FALSE
  (sndRattle:
             command("play")
             fileName("effects\\rattle.sciAudio")
             volume("100")
             loopCount("0")
             init()
  )
)

Of course I added the instance that defines our particular use.
Code: [Select]
(instance sndRattle of sciAudio(properties)(method (init)(super:init())))
Lastly in our main script, I created a simple procedure to be called from all of the other scripts.
Code: [Select]
(procedure public (shakeRattle)
// Print(950 6)
= rattleSound  TRUE
)

Now to trigger it from the actual roomscripts,
Code: [Select]
shakeRattle()
So the theory is, call the procedure. It turns the global variable to TRUE. The doit method notices the true value and passes the play command and reset the variable to false. Simple enough of an idea really, just no matter what I have tried I keep getting an oops error.

44
Whether you want your ego to scale, or change views when walking in water, the basic concept is pretty simple. Drop some control color blocks and in your RoomScript Doit method you will want to check what control color your ego is on, and adjust the view accordingly.

The basic idea:
Code: [Select]
(instance RoomScript of Script
(properties)
  (method (doit)
  (super:doit())

//**********************************************
// Control Ego View based off of the control color ego is on
//**********************************************

  (if (== (send gEgo:onControl()) ctlGREEN)(send gEgo:view(1)))
  (else
      (if (== (send gEgo:onControl()) ctlTEAL)(send gEgo:view(2)))
      (else
  (if (== (send gEgo:onControl()) ctlNAVY)(send gEgo:view(3)))
          (else
      (if (== (send gEgo:onControl()) ctlBLACK)(send gEgo:view(0)))
          )
       )
   )

    //**********************
    // insert other doit code here
    //**********************

  ) // end doit method

That is basicly the heart of the matter. However, there is a couple of things we should do to help out our code a little bit. The doit method checks every cycle. Let's take for instance your ego is standing on the Navy control color. Every cycle, the game is going to set the ego view to 3, set the ego view to 3, set the ego view to 3, over and over and over again. While visually this won't be a problem, it does bog your game down a bit and could lead to some memory issues. Beside the fact that really we only need to change the ego view to 3 if the ego is on Navy and isn't currently set to 3. Easy enough to fix, we just need to add in another check. This time looking at both the control color ego is standing on as well as the current view.

Code: [Select]
(instance RoomScript of Script
(properties)
  (method (doit)
  (super:doit())

//**********************************************
// Control Ego View based off of the control color ego is on
//**********************************************

  (if ((== (send gEgo:onControl()) ctlGREEN) and (not(== (send gEgo:view) 1)))
  (send gEgo:view(1))
  )
  (else
      (if ((== (send gEgo:onControl()) ctlTEAL) and (not(== (send gEgo:view) 2)))
      (send gEgo:view(2))
      )
      (else
  (if ((== (send gEgo:onControl()) ctlNAVY) and (not(== (send gEgo:view) 3)))
          (send gEgo:view(3))
          )
          (else
      (if ((== (send gEgo:onControl()) ctlBLACK) and (not(== (send gEgo:view) 0)))
              (send gEgo:view(0))
              )
          )
       )
   )

    //**********************
    // insert other doit code here
    //**********************

  ) // end doit method

We are definately getting closer. Now there may be times, that for whatever reason, you don't want the ego to scale. Whether because of a cutscene or some other business that you may need to take control of the ego's view regardless of the control colors. The Doit method is immediately going to try and take control back. We really should build in some sort of variable which allows us to take control when we want to. Simple enough, create a local variable named whatever you want, but it would usually help if it describes what it is that it does. So to that end, I'll call it doScale. So up at the top of your script, just after the uses, add in the local variable.

Code: [Select]
/******************************************************************************
// rm002.sc                                                             
//******************************************************************************
(include "sci.sh")(include "game.sh")                                 (script 2)
//*****************************************************************************
(use "main")(use "controls")(use "cycle")(use "game")(use "feature")(use "obj")
//*****************************************************************************
(local
 doScale = TRUE
)

Now we wrap our last bit of code for the scaling around a check of this new variable. If it is true, then ego will scale. If it isn't, ego will stop changing when going onto a new control area.

Code: [Select]
(instance RoomScript of Script
(properties)
  (method (doit)
  (super:doit())

//**********************************************
// Control Ego View based off of the control color ego is on
//**********************************************

(if(doScale)
  (if ((== (send gEgo:onControl()) ctlGREEN) and (not(== (send gEgo:view) 1)))
  (send gEgo:view(1))
  )
  (else
      (if ((== (send gEgo:onControl()) ctlTEAL) and (not(== (send gEgo:view) 2)))
      (send gEgo:view(2))
      )
      (else
  (if ((== (send gEgo:onControl()) ctlNAVY) and and (not(== (send gEgo:view) 3)))
          (send gEgo:view(3))
          )
          (else
      (if ((== (send gEgo:onControl()) ctlBLACK) and and (not(== (send gEgo:view) 0)))
              (send gEgo:view(0))
              )
          )
       )
   )
) // ends if doScale is true

    //**********************
    // insert other doit code here
    //**********************

  ) // end doit method

And there you go. Now all you need is a room with the control areas defined and you should be good to go.

45
I don't know if anyone would be interested in this one, but this showed up on twitter and in the AGS forums. Kind of tailor made for our SCI and AGI engines.

Quote
Create a Point and Click adventure in 15 Days.

The game can be of any size/length.
It must resemble the graphic style of a game from 80s/90s (LucasArts / Sierra / Delphine etc).
It must look / sound / feel / play as if it is from a retro system (of your choice) using it's respective palette and resolution.
It can use a SCUMM Verb/Object style system, or something of your own creation.
Activity Feed

Tweets with the hashtag #pointclickjam, screenshots, video uploads, and blog posts of jam games will be pulled into the feed while they're being worked on.

http://jams.gamejolt.io/pointandclickjam

Pages: 1 2 [3] 4 5 ... 11

SMF 2.0.19 | SMF © 2021, Simple Machines
Simple Audio Video Embedder

Page created in 0.104 seconds with 18 queries.