Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Ruby bindings and extensions for the Activeworlds SDK.
Ruby C
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
examples
ext
lib
utilities
README
Rakefile
ruby_activeworld.gemspec

README

= Purpose

This project provides a ruby binding for the Activeworlds SDK. The current
target version of the binding is the 4.1 version (build 66).

I say generate because once the project is run, the .so file for the extension 
is built, and can be ported wherever needed. 

This binding takes certain liberties around the SDK, primarily doing everything
possible to make it a more sane object-oriented design, and makes some attempt
to hide the worst aspects of the SDK's design. One particular case is the that
binding wraps all attributes available to a given callback in a hash that is
returned to the ruby script.

Additionally, there is a ruby level wrapper to the binding that wraps calls that
are made against the SDK, like sending a console message, so that only the 
critical parameters are necessarily passed, and sane defaults are provided as
an options hash for the other settings that might apply.

This is a work in progress, with many pieces remaining untested. Sample programs
are provided and implement the tested functions. 

The license for the AWSDK is repeated here, but currently you must have the 
library on your system. 

== Installation Note

I haven't worked out a great way to get the AW SDK installed as part of this 
process, so you'll have to specify the directory the library is in with the
option --with-awsdk-dir= . Note that this option requires that you have lib
and include dirs under the directory pointed to, otherwise use 
--with-awsdk-lib= and --with-awsdk-include= to point to your libaw_sdk.41.so
and Aw.h respectively.

I hope to get a post-compile hook implemented that will allow this to be done
automagically.

== The Activeworlds SDK License

BY USING THE ACTIVE WORLDS SDK MODULE OR THE ACTIVE WORLDS API ITSELF, AS PART
OF, OR IN CONJUNCTION WITH, APPLICATIONS DEVELOPED, DISTRIBUTED OR IMPLEMENTED
BY YOU OR ON YOUR BEHALF, YOU ARE CONSENTING TO BE BOUND BY THIS AGREEMENT, BY
THE APPLICABLE PROVISIONS OF THE LICENSE AGREEMENT OF THE ACTIVE WORLDS
SOFTWARE. IF YOU DO NOT AGREE, DO NOT USE THE ACTIVE WORLDS SDK MODULE OR THE
ACTIVE WORLDS API ITSELF. ACTIVE WORLDS SDK LICENSE AGREEMENT. This Agreement
sets forth the terms and conditions of use of the Active Worlds software that
enables use of Active Worlds by other applications ("SDK Module") and the
Active Worlds API itself (hereafter collectively or separately referred to as
"Active Worlds SDK") GRANT OF LICENSE. Subject to the provisions contained
herein, Activeworlds Inc. hereby grants to you a non-exclusive,
non-transferable license (without the right to sublicense) to use the Active
Worlds SDK as part of, or in conjunction with, Applications developed,
distributed or implemented by you or on your behalf (the "SDK Applications").
This license does not grant you any right to any version enhancement update,
or to a continuous availability of the Active Worlds SDK and the functionality
of the Active Worlds End User Software (The "Software"), or to any support or
telephone assistance. Activeworlds Inc. may revise or cease to provide the
Active Worlds SDK, the Software or its functionality or any part thereof
including without limitation, loss of compatibility, denial of access to the
functionality of the Software or the Active Worlds Network from any SDK
Application, from time to time without notice.

SOME LIMITATIONS. You may not use the Active Worlds SDK to: (a) modify,
translate, reverse engineer, decompile, disassemble (except and solely to the
extent an applicable statute expressly and specifically prohibits such
restrictions), or create derivative works of the Active Worlds Software and
network; (b) create applications for unlawful or illegal purposes or
activities; MISSION CRITICAL AND CONTENT SENSITIVE APPLICATIONS. Do not
create, distribute or otherwise use any SDK Application which uses or relies
on the Active Worlds Software, the Active Worlds network, the Activeworlds
Inc. websites, including but not limited to, message boards, directories,
databases, ("Active Worlds Services and Information") or any other program,
information or service whatsoever related thereto for "Mission Critical" or
"Content Sensitive" applications and use. "Content Sensitive" shall mean any
information or data you do not wish to be freely accessible and generally
available to Internet users. "Mission Critical" application and use shall mean
applications and use that may result in damage if failed, for any reason
whatsoever including without limitation, for fraud, eavesdropping, electronic
trespassing, sniffing, spoofing, imposturing, breaking passwords, harassment,
for reaching erroneous address or recipient, or out of negligence. NO
WARRANTY. The Active Worlds SDK is available on an "AS IS" basis, without
warranty of any kind Including without limitation the warranties it is free of
defects, merchantable, fit for a particular purpose or non-infringing. The
entire risk as to the quality and performance of the Active Worlds SDK is
borne by you. Should the Active Worlds SDK prove defective or inaccurate or
should the Active Worlds SDK cease to operate, as the case may be you and not
Activeworlds Inc. or its suppliers assume the entire cost of any damage,
service and repair. This disclaimer of warranty constitutes an essential part
of the agreement.

TERM AND TERMINATION. This license shall continue for a year or until
terminated, whichever is first. The license will terminate automatically with
no delay, if (1) you fail to comply with the limitations described herein; or
(2) Activeworlds Inc. gave you a 72 hours prior notice of termination; or (3)
Activeworlds Inc. posted a notice of termination on the Activeworlds Inc.
website; or (4) you have reached the Copies Limit. Upon termination of this
License you agree to immediately destroy all copies of the SDK Applications in
your possession and not to use the Active Worlds SDK for SDK Applications,
without a special license from Activeworlds Inc.

LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY,
TORT, CONTRACT, OR OTHERWISE, SHALL ACTIVEWORLDS INC. BE LIABLE TO YOU OR ANY
OTHER PERSON FOR ANY INDIRECT, SPECIAL IncIDENTAL, OR CONSEQUENTIAL DAMAGES OF
ANY KIND INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, LOSS OF
POTENTIAL REVENUES, LOSS OF BUSINESS OPPORTUNITIES, WORK STOPPAGE, COMPUTER
FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES. IN
NO EVENT WILL ACTIVEWORLDS INC. BE LIABLE FOR ANY DAMAGES, EVEN IF
ACTIVEWORLDS INC. HAD BEEN INFORMED OR SHALL HAVE BEEN INFORMED OF THE
POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY THIRD PARTY. SOME
JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
CONSEQUENTIAL DAMAGES, SO THIS LIMITATION AND EXCLUSION MAY NOT APPLY TO YOU.

RIGHTS. Title, ownership rights, and intellectual property rights in the
Active Worlds Software and the Active Worlds SDK shall remain in Activeworlds
Inc. The Active Worlds Software and the Active Worlds SDK is protected by
copyright and other intellectual property laws and by international treaties.
Title and related rights in the content accessed through the Active Worlds
Software or the Active Worlds SDK is the property of the applicable content
owner and is protected by applicable law. The license granted under this
Agreement gives you no rights to such content.

MISCELLANEOUS. This Agreement represents the complete agreement and
understanding concerning the license granted hereunder and may be amended only
in writing executed by both parties. This Agreement shall be governed by
Massachusetts law, excluding conflict of law provisions (except to the extent
applicable law, if any, provides otherwise). This license is granted to you
personally and you agree not to assign your rights herein. Any attempted
assignment by you shall be null and void. If any provision of this Agreement
is held to be unenforceable, such provision shall be reformed only to the
extent necessary to make it enforceable.

SPECIAL LICENSE. Any use of the Active Worlds SDK which is not detailed in
this License Agreement is prohibited without a special License from
Activeworlds Inc.
Something went wrong with that request. Please try again.